Javascript 谷歌驱动API进度条错误
我编写了以下代码,将一个文件上传到我的Google Drive帐户。它很好用。然后我尝试添加一些上传进度跟踪程序,但遇到了一些问题。它可以正常工作,但在上传完成之前,进度几乎立即达到100%Javascript 谷歌驱动API进度条错误,javascript,node.js,google-drive-api,google-api-nodejs-client,Javascript,Node.js,Google Drive Api,Google Api Nodejs Client,我编写了以下代码,将一个文件上传到我的Google Drive帐户。它很好用。然后我尝试添加一些上传进度跟踪程序,但遇到了一些问题。它可以正常工作,但在上传完成之前,进度几乎立即达到100% export async function uploadFile(auth) { const fileMetadata = { name: FILENAME, }; const fileWrite = fs.createReadStream(path.join(homedir(), 'P
export async function uploadFile(auth) {
const fileMetadata = {
name: FILENAME,
};
const fileWrite = fs.createReadStream(path.join(homedir(), 'Pictures', FILENAME));
const fileSize = fs.statSync(path.join(homedir(), 'Pictures', FILENAME)).size;
const media = {
mimeType: FILETYPE,
body: fileWrite,
};
const drive = google.drive({ version: 'v3', auth });
const res = await drive.files.create({
fileMetadata,
media,
fields: 'id',
}, {
onUploadProgress: (evt) => {
const progress = (evt.bytesRead / fileSize) * 100;
console.log(progress);
},
});
console.log(res.data);
}
它上载我想要的文件,显示进度并返回文件id。问题是上载进度错误。我尝试上传一个100mb的文件,使用20mbps的上传连接,只需1.8秒就可以完成进度。promise文件上传在14秒后解决我怀疑这是对onUploadProgress的混淆。我找不到该回调的任何文档,但我想它只适用于可恢复的上载。可能相关(是Axios的东西):也看到了您找到了任何解决方案吗?