我对使用googleapis(v.40)软件包在google drive上上传文件有问题:
在我的web应用程序(用Vue js编写)中,我需要使用googleapis将用户“A”的图像文件上传到用户“B”的google驱动器空间。
为此,我从谷歌控制台平台(用户B)创建了一个“服务帐户”,并生成了凭证。用于API访问的json。(JWToken,服务对服务场景)
在我的web应用程序中,通过服务帐户的json凭据获得AccessToken后,我就可以上传文件了。但是,当我打电话给驱动器时。文件夹。创建(…)api i收到以下错误:
包含0个mime部分的多部分请求无效。
下面是一些代码:
...
// get google api
const {google} = require("googleapis");
const drive = google.drive("v3");
// get authorization token
let authToken = await getAuthToken() // it perfectly works
console.log(authToken)
let metadata = {
name: name,
parents: [idOfTheParentFolder]
}
let media = {
mimeType: 'image/jpeg',
body: file
}
let objImage = {
auth: authToken,
resource:metadata,
media: media,
fields: 'id',
}
drive.files.create(objImage, function (error, success) {
if (!error) {
...
}
else{
// here i got the error in question
}
})
我在单节点js文件中尝试了这段代码,效果很好,但在web浏览器Vue应用程序中不起作用。
首先让我说,用于显示文件的API(drive.files.list())和用于创建文件夹的API(drive.files.create())在我的web应用程序中运行良好。
有什么建议吗?