Javascript Google驱动器上载API-包含0个mime部分的多部分请求无效
我对Google Drive node.js库有一些问题。我正试图上传一张图片到我的谷歌硬盘,我之前已经通过了“oauth2Client”对象的身份验证。这几乎是从谷歌文档上的Javascript Google驱动器上载API-包含0个mime部分的多部分请求无效,javascript,node.js,api,google-drive-api,drive,Javascript,Node.js,Api,Google Drive Api,Drive,我对Google Drive node.js库有一些问题。我正试图上传一张图片到我的谷歌硬盘,我之前已经通过了“oauth2Client”对象的身份验证。这几乎是从谷歌文档上的 var service = googleApi.drive('v3'); var fileMetadata = { 'name': 'jpeg-home.jpg' }; var media = { mimeType: 'image/jpeg', body: fs.createReadStream(
var service = googleApi.drive('v3');
var fileMetadata = {
'name': 'jpeg-home.jpg'
};
var media = {
mimeType: 'image/jpeg',
body: fs.createReadStream('./temp/downloads/jpeg-home.jpg')
};
service.files.create({
auth: oauth2Client,
resource: fileMetadata,
media: media,
fields: 'id'
}, function (err, file) {
if (err) {
console.error(err);
return false;
} else {
console.log('File Id: ', file.id);
return true;
}
});
我得到的答复是错误的:
Error: Invalid multipart request with 0 mime parts.
我做了一些搜索,但没有找到任何东西,因此任何帮助都将不胜感激。提前干杯。文件中的样本似乎从googleapis软件包的第25版起就被破坏了
恢复到googleapis@24.0.0将解决此问题,直到文档或更高版本的软件包代码修复。我通过将
google auth library
升级到最新版本(目前为1.3.2)解决了此问题
在官方快速入门中,它指定如下方式安装库:
npm安装谷歌认证-library@0.*--保存
只需按以下方式安装最新版本:
npm安装--保存谷歌认证库
请注意,此升级有一些突破性的更改,因此您需要像指定的那样升级授权代码我是
googleauth库
和googleapis
的当前维护者。请确保不要在GoogleAppis
旁边安装自己版本的GoogleAuth库
GoogleAppis
附带内置的兼容版本的google auth library
。如果你尝试安装自己的版本,它可能会以奇怪、不可预测的方式崩溃
正确的做法是从package.json中删除
google auth library
,运行npm install
,然后对您的请求使用google.auth.OAuth2
。希望这有帮助 这些信息对你有用吗?对不起,我没有早点给你回电话。是的,这确实有帮助,谢谢:)没问题。我很高兴你的问题得到了解决。我在vue js中也遇到了同样的问题,我的package.json中只有googleapis。你能帮助我吗?