我正在尝试使用 Javascript/JQuery 将图片上传到 Google+;我有一个访问 token ,可用于成功验证 POST 请求,但当我尝试使用 G+ Media Insert ( https://developers.google.com/+/domains/api/media/insert) 时收到以下响应:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "forbidden",
"message": "Forbidden"
}
],
"code": 403,
"message": "Forbidden"
}
}
我没有配置域范围的委派,因为我希望用户登录以生成访问 token (这可能是问题所在吗?)。我在开发人员控制台中启用了 Google+ Domains API,并且相关范围已到位,但我无法弄清楚为什么会收到 403 错误。正在使用以下 AJAX 请求:
var postForm = new FormData();
postForm.append("source",[code which generated a blob]);
postForm.append("displayName", "TestUpload");
$.ajax({
url: "https://www.googleapis.com/upload/plusDomains/v1/people/me/media/cloud",
headers: {"Authorization": "Bearer " + acToken},
type:"POST",
uploadType: "multipart/related",
processData:false,
contentType:false,
cache:false,
data: postForm,
});
如有任何帮助,我们将不胜感激,如果需要,我可以提供更多信息。
PS:目前我实际上在 URL 中使用用户 ID 而不是 me
最佳答案
首先,确保用户 ID 属于您已通过身份验证的用户(可能通过此 OAuth flow )。与 people.get 等方法不同,此方法需要身份验证,并且不能仅使用 ID 调用,除非该 ID 是当前经过身份验证的用户。这就是为什么我们建议使用特殊值 me
以避免混淆。
其次,您需要确定经过身份验证的用户是 Google Apps 用户。例如,如果用户是 GMail 用户,则请求将收到 403,因为非域帐户不允许使用 Google+ 域 API。
关于javascript - Google Plus 媒体插入 - Google Domains API - 403 禁止访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22302293/