【问题标题】:Google Drive API - Automated Queries MessageGoogle Drive API - 自动查询消息
【发布时间】:2020-05-29 14:00:36
【问题描述】:

我正在使用this Ghost 插件将图像数据存储在 Google Drive 上。最近,图像已停止加载,并下载此错误页面代替图像:

该站点在 Google Cloud Run 上的容器化 Ghost 实例中运行,来源 here

我是否需要在某处开具支持票才能解决此问题?有问题的网站是here

编辑:这是用于访问已保存内容的代码。

jwtClient.authorize(function(err, tokens) {
        if (err) {
          return next(err);
        }
        const drive = google.drive({
          version: API_VERSION,
          auth: jwtClient
        });
        drive.files.get(
          {
            fileId: id
          },
          function(err, response) {
            if (!err) {
              const file = response.data;
              const newReq = https
                .request(
                  file.downloadUrl + "&access_token=" + tokens.access_token,
                  function(newRes) {
                    // Modify google headers here to cache!
                    const headers = newRes.headers;
                    headers["content-disposition"] =
                      "attachment; filename=" + file.originalFilename;
                    headers["cache-control"] = "public, max-age=1209600";
                    delete headers["expires"];

                    res.writeHead(newRes.statusCode, headers);
                    // pipe the file
                    newRes.pipe(res);
                  }
                )
                .on("error", function(err) {
                  console.log(err);
                  res.statusCode = 500;
                  res.end();
                });
              req.pipe(newReq);
            } else {
              next(err);
            }
          }
        );
      });

【问题讨论】:

  • 您的代码使用哪种凭据访问 Google 云端硬盘?
  • 这是一个服务帐户令牌
  • 我投票决定将此问题作为离题结束,因为它与编程无关,因此无法告诉您何时或是否应该向 Google 发送支持票,您应该自己查看 Google 支持页面。跨度>
  • 使用服务帐户是您的问题。但是,您的问题中没有足够的详细信息来说明您是如何创建令牌、如何模拟等的。
  • 更新问题。它是根据服务帐户访问密钥创建的临时 JWT 令牌。

标签: docker google-drive-api ghost-blog google-cloud-run


【解决方案1】:

您的问题与file.downloadUrl 有关。此字段不保证有效,也不应用于下载文件。

正确的做法是改用webContentLink 属性。可以参考here

【讨论】:

猜你喜欢
  • 2019-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-18
相关资源
最近更新 更多