Google apps script 如何通过谷歌应用脚本从谷歌云存储中获取上传的文件URL
我正在构建谷歌应用程序脚本产品,将pdf文件上传到谷歌云存储,效果非常好(多亏了这一点)。但我无法获取上传的文件URL 这是我的Google apps script 如何通过谷歌应用脚本从谷歌云存储中获取上传的文件URL,google-apps-script,google-cloud-platform,google-cloud-storage,Google Apps Script,Google Cloud Platform,Google Cloud Storage,我正在构建谷歌应用程序脚本产品,将pdf文件上传到谷歌云存储,效果非常好(多亏了这一点)。但我无法获取上传的文件URL 这是我的uploadFileToGCS()函数: function uploadFileToGCS() { var service = getService(); if (!service.hasAccess()) { Logger.log("Please authorize %s", service.getAuthorizationUrl()); r
uploadFileToGCS()
函数:
function uploadFileToGCS() {
var service = getService();
if (!service.hasAccess()) {
Logger.log("Please authorize %s", service.getAuthorizationUrl());
return;
}
var blob = DriveApp.getFileById(params.DRIVE_FILE).getBlob();
var bytes = blob.getBytes();
var url = 'https://www.googleapis.com/upload/storage/v1/b/BUCKET/o?uploadType=media&name=FILE'
.replace("BUCKET", params.BUCKET_NAME)
.replace("FILE", encodeURIComponent(params.FILE_PATH));
var response = UrlFetchApp.fetch(url, {
method: "POST",
contentLength: bytes.length,
contentType: blob.getContentType(),
payload: bytes,
headers: {
Authorization: 'Bearer ' + service.getAccessToken()
}
});
var result = JSON.parse(response.getContentText());
Logger.log(JSON.stringify(result, null, 2));
}
响应日志:Logger.log(JSON.stringify(result,null,2))代码>
当我点击mediaLink时,浏览器会自动下载我的pdf文件,这不是我想要的
那么我如何通过GAS从谷歌云存储中获取上传的URL文件呢?
欢迎任何意见 本教程非常简单
使用GCP控制台创建服务帐户密钥的文档是。教程是
使用GCP控制台创建服务帐户密钥的文档是。您看到了吗。感谢您的指导,但当我从GCS下载JSON凭证时,我的JSON没有私钥
和客户端电子邮件
?我缺少什么?您是否使用GCP控制台创建了服务帐户密钥?再见,非常感谢。我误解了。你能给我一个baseURL
的例子吗?我刚从服务帐户下载了我的JSON,它包括private\u key
和client\u email
…,我将我的JSON作为凭证传递给谷歌云存储,我的pdf文件url作为baseURL
,它生成了签名url,我打开了那个URL,发现这个错误我们计算的请求签名与您提供的签名不匹配。检查你的谷歌密钥和签名方法。
你能看到这个吗。感谢您的指导,但当我从GCS下载JSON凭证时,我的JSON没有私钥
和客户端电子邮件
?我缺少什么?您是否使用GCP控制台创建了服务帐户密钥?再见,非常感谢。我误解了。你能给我一个baseURL
的例子吗?我刚从服务帐户下载了我的JSON,它包括private\u key
和client\u email
…,我将我的JSON作为凭证传递给谷歌云存储,我的pdf文件url作为baseURL
,它生成了签名url,我打开了那个URL,发现这个错误我们计算的请求签名与您提供的签名不匹配。检查您的Google密钥和签名方法。
19-05-29 21:28:19:726 PDT] {
"kind": "storage#object",
"id": "bucket_name/folder_name/file_name.pdf/1559190499625016",
"selfLink": "https://www.googleapis.com/storage/v1/b/bucket_name/o/folder_name/file_name.pdf",
"name": "folder_name/file_name.pdf",
"bucket": "bucket_name",
"generation": "1559190499625016",
"metageneration": "1",
"contentType": "application/pdf",
"timeCreated": "2019-05-30T04:28:19.624Z",
"updated": "2019-05-30T04:28:19.624Z",
"storageClass": "MULTI_REGIONAL",
"timeStorageClassUpdated": "2019-05-30T04:28:19.624Z",
"size": "101396",
"md5Hash": "hash",
"mediaLink": "https://www.googleapis.com/download/storage/v1/b/bucket_name/o/folder_name/file_name.pdf?generation=1559190499625016&alt=media",
}