好的,所以我已经放弃尝试通过 onApiReady 为 Youtube API 更新元数据,并继续发出一个 put 请求,如https://developers.google.com/youtube/v3/docs/videos/update所示.
ajax 请求返回成功,但实际上并没有更新任何数据。此外,返回的 jqXHR 详细说明了更新请求之前的原始数据。出于演示目的,我已将其转换为示例,但它仍然不起作用。这是放置请求。
$.ajax({
type: "PUT",
dataType: "jsonp",
url: "https://www.googleapis.com/youtube/v3/videos/?part=snippet&key=<replaced with api key>",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer " + oAuthToken.access_token
},
data: $.parseJSON('{"id": "<replaced with videoId>", "snippet": {"title": "New Title", "description": "New Description"}, "status": {"privacyStatus": "unlisted"}}'),
success: function(data, error, completeError) {
alert("Hallelujah");
}
});
它报告为成功,youtube 上没有更新任何数据,响应中返回的代码段包含所有原始值。
我的 OAuth2 令牌已通过身份验证
var scopes = ['https://gdata.youtube.com', 'https://www.googleapis.com/auth/youtube', 'https://www.googleapis.com/auth/youtubepartner', 'http://gdata.youtube.com', 'https://www.googleapis.com/auth/youtube.upload'];
我一直在处理这个问题,我知道要么 Youtube 不能真正做到这一点(不太可能),要么我错过了一些愚蠢而简单的东西。如果有人可以提供帮助,请告诉我。
谢谢,
马特