3

成功的加载之一是这样的:

http://gdata.youtube.com/feeds/api/videos/N7m86aMNjlQ?callback=jsonp1335008664824&alt=json-in-script

但是,当视频是私有的或不存在时,它只会返回一条带有 http 错误状态代码的消息。

http://gdata.youtube.com/feeds/api/videos/zkZBEnBjOjY?callback=jsonp1335008664915&alt=json-in-script

我创建了一个示例唯一回调函数名称,例如“jsonp1335008664824”,并将 url 作为脚本标记的 src 附加,并在脚本加载时捕获该函数。但是,如果它返回错误,则 youtube 不会将内容作为回调函数返回,并且我无法捕获其中任何一个。因为脚本标签没有“onerror”属性,我什至不知道它是在加载还是返回一个错误,比如 404 或 503 状态码。

似乎处理它的唯一方法是在我附加脚本标签时设置超时功能。但是,这不是一种可靠的方法,因此我正在寻找另一种选择。我知道即使我可以捕获状态代码,我也无法收到错误消息,但正如我所见,只有两个状态代码和两个错误,即“找不到视频”的 404 或“视频是私有的”的 503。

4

1 回答 1

0

我从 Youtube 开发者论坛得到了答案。因此,jsonc 是处理此类请求的更好方法。而这个开发请求变成了这个布局: http ://gdata.youtube.com/feeds/api/videos/zkZBEnBjOjY?callback=jsonp1335008664915&alt=jsonc&v=2

而且正如我从这里了解到的,我们可以在 Youtube Data Api 中使用 XMLHTTPRequest。这太棒了,因为我们可以从现在开始发出 POST 和 PUT 请求。

于 2012-04-24T01:18:12.577 回答