Google Drive API 获取缩略图

mir*_*rta 1 javascript node.js google-drive-api google-api-nodejs-client

我想获得谷歌驱动器为存储的 pdf 文件创建的缩略图。通过这个函数,我列出了所有文件:

  listFiles: function (folderId, onData, onError) {

    drive.files.list({
        auth: jwtClient,
        q: "'" + folderId + "' in parents"
    }, function (err, res) {
         console.log(res.files)
       }
    });
Run Code Online (Sandbox Code Playgroud)

每个文件的控制台日志输出如下所示:

{ 
  kind: 'drive#file',
  id: '0BapkdhpPsqtgf01YbEJRRlhuaVUf',
  name: 'file-name.pdf',
  mimeType: 'application/pdf' 
}
Run Code Online (Sandbox Code Playgroud)

当我检查谷歌的文档时,它说文件的元数据应该包含所有这些属性: https: //developers.google.com/drive/v3/reference/files 并在那里我发现:contentHints.thumbnail.image如何访问它?

mir*_*rta 6

好吧,问题是获取我需要使用函数的文件的元数据files.get,而不是files.list. 还有一点就是,在调用的时候,需要设置字段参数。例如:

drive.files.get({
    auth: jwtClient,
    fileId: fileId,
    fields : "thumbnailLink"
})
Run Code Online (Sandbox Code Playgroud)


小智 5

You can use the fields parameter to change which metadata fields are returned:

drive.files.list({
    auth: jwtClient,
    q: "'" + folderId + "' in parents",
    fields: "files(id, name, mimeType, thumbnailLink)"
}, function (err, res) {
    console.log(res.files)
});
Run Code Online (Sandbox Code Playgroud)