使用Node.js中的REST API将文件上传到Google云端硬盘

时间:2017-11-14 07:08:36

标签: node.js google-drive-api

我正在尝试使用node.js中的rest API(插入)将文件上传到google驱动器,我有access_token和refresh_token。如何在没有任何sdk的情况下上传。

2 个答案:

答案 0 :(得分:0)

我通过稍微修改NodeJS basic upload sample并将其与已有的NodeJS Quickstart

混合来成功测试此NodeJS上传

这是上传功能:

function uploadFile(auth){
  var drive = google.drive('v3');
  var fileMetadata = {
         'name': 'uploadImageTest.jpeg'
      };
  var media = {
          mimeType: 'image/jpeg',
          //PATH OF THE FILE FROM YOUR COMPUTER
          body: fs.createReadStream('/usr/local/google/home/rrenacia/Downloads/noogui.jpeg')
      };

      drive.files.create({
          auth: auth,
          resource: fileMetadata,
          media: media,
          fields: 'id'
      }, function (err, file) {
      if (err) {
          // Handle error
          console.error(err);
      } else {
          console.log('File Id: ', file.id);
      }
   });
}

您可以使用NodeJS快速入门作为授权参考。更改listFiles函数名称:

authorize(JSON.parse(content), listFiles);

到上传功能的名称,在这种情况下:

authorize(JSON.parse(content), uploadFile);

在我的Google云端硬盘上成功上传:

enter image description here

答案 1 :(得分:-1)