【发布时间】:2020-06-07 13:42:12
【问题描述】:
尝试使用 Google Apps 脚本和 Google Photos API 将照片添加到 Google Photos。上传似乎工作/返回一个令牌,但随后将照片添加到库中失败。该过程包括两个步骤: 1. 按照here 的描述上传照片数据,然后 2. 按照here 的描述将照片添加到照片库。
第 1 步对我有用,因为我获得了上传令牌,但第 2 步使用下面的源代码会引发错误,但我的调用有它需要的一个媒体项目。
{
"error": {
"code": 400,
"message": "Request must have at least one newMediaItem.",
"status": "INVALID_ARGUMENT"
}
}
我的代码在下面的上传步骤之后。我试图对请求正文进行字符串化并将其传递给有效负载而不是正文,但没有任何效果。由于错误似乎足够具体,我觉得我只是忽略了一件小事,但是什么???谁有一段工作代码,最好是在我可以查看的应用程序脚本中?
requestHeader = {
"authorization": "Bearer " + photos.getAccessToken(),
"Content-Type": "application/json"
}
var requestBody = {
"newMediaItems": [
{
"description": "Photo description",
"simpleMediaItem": {
"fileName": fileName,
"uploadToken": uploadToken
}
}
]
}
var options = {
"muteHttpExceptions": true,
"method" : "post",
"headers": requestHeader,
"body" : requestBody
};
var response = UrlFetchApp.fetch("https://photoslibrary.googleapis.com/v1/mediaItems:batchCreate", options);
Logger.log("raw: " + response);
【问题讨论】:
标签: google-apps-script google-photos google-photos-api