googleapis / googleapis/google-api-nodejs-client
"onUploadProgress" not working
- Lingua principale
- TypeScript
- Stelle
- 12.2k
- Fork
- 2k
- Merge medio
- 1g 9h
- PR unite (30g)
- 24
Descrizione
Hi, i am trying to track the progress of file upload with the onUploadProgress function but its not working
```jsconst uploadFile = async (fileObject, res, date) => {
const bufferStream = new stream.PassThrough();
bufferStream.end(fileObject.buffer);
const Filename = `${fileObject.fieldname + "_" + date + "_" + fileObject.originalname}`;
const fileSize = fileObject.buffer.length;
const media = {
mimeType: fileObject.mimeType,
body: bufferStream,
};
const fileMetadata = {
name: Filename,
parents: ['1HuCYguIQhi0OFcnhbcr2JwPwJzsVeWzJ'],
};
const upload = drive.files.create(
{
resource: fileMetadata,
media: media,
fields: 'id,name',
},
{
onUploadProgress: evt => {
const progress = (evt.bytesRead / fileSize) * 100;
readline.clearLine(process.stdout, 0);
readline.cursorTo(process.stdout, 0);
process.stdout.write(`${Math.round(progress)}% complete`);
},
}
);
try {
const response = await upload;
console.log('File uploaded successfully');
res.status(200).send(`${Filename}`);
} catch (error) {
console.error('Error uploading file:', error);
res.status(500).send('Error uploading file');
}
};
```
i found the official example for this but even that doesn't work
https://github.com/googleapis/google-api-nodejs-client/blob/main/samples/drive/upload.js
Issue: It returns the progress only when it reaches 100%
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia leggendo il file di riferimento samples/drive/upload.js e confrontando il suo utilizzo di onUploadProgress con la chiamata fornita a drive.files.create. Riproduci un upload che dovrebbe emettere eventi intermedi; è completato quando vengono osservati callback di avanzamento prima che l'upload raggiunga il 100%.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- javascript, node.js
- Ambito
- api
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100