Google 驱动器 API - 自动查询消息
Google Drive API - Automated Queries Message
我正在使用 this Ghost 插件将图像数据存储在 Google 驱动器上。最近,图片已停止加载,下载的错误页面代替了图片:
站点 运行 在 Google 云 运行 上的容器化 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);
}
}
);
});
您的问题与 file.downloadUrl
有关。此字段不保证有效,不应该用于下载文件。
正确的做法是使用 webContentLink
属性 代替。大家可以参考一下here
我正在使用 this Ghost 插件将图像数据存储在 Google 驱动器上。最近,图片已停止加载,下载的错误页面代替了图片:
站点 运行 在 Google 云 运行 上的容器化 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);
}
}
);
});
您的问题与 file.downloadUrl
有关。此字段不保证有效,不应该用于下载文件。
正确的做法是使用 webContentLink
属性 代替。大家可以参考一下here