带有Node.js googleapis软件包的Google Drive SDK抛出错误:无效的多部分请求,file.create上有0个mime部分

时间:2018-01-28 23:44:56

标签: node.js google-drive-api

我尝试使用他们的Api和Nodejs将文件上传到Google云端硬盘。我已成功运行此处的快速入门代码: https://developers.google.com/drive/v3/web/quickstart/nodejs

我将示例来源中的metadata.readonly范围替换为https://www.googleapis.com/auth/drive,并将对listFiles()的调用替换为我创建的createFile()

function createFile(auth) {
    var service = google.drive('v3');
    service.files.create({
        auth: auth,
        resource: {
            name: 'test'
        },
        media: {
            mimeType: 'plain/text',
            body: 'Hello drive'
        },
        fields: 'id'
    }, function (err, response) {
        if (err) {
            console.log(err);
            return;
        }
        console.log('Resource created successfully: ' + JSON.stringify(response));
    });
}

响应不断回来,出现错误: Error: Invalid multipart request with 0 mime parts.

如果有人对出了什么问题有所了解,我们将不胜感激。谢谢!

更新:从googleapis 25降级到24似乎已经解决了这个问题。

1 个答案:

答案 0 :(得分:0)

图书馆的维护者。如果您尝试在google-auth-library旁边安装自己的googleapis版本,则会出现此类问题。 googleapis附带google-auth-library的兼容版本。请确保从package.json中删除google-auth-library,然后使用google.auth.OAuth2获取对auth对象的引用。

你可以尝试一下,让我知道它是否适用于版本27?