jquery – 对youtube oembed调用的JSONp请求的响应给出“无效标签”错误

前端之家收集整理的这篇文章主要介绍了jquery – 对youtube oembed调用的JSONp请求的响应给出“无效标签”错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用oembed对youtube进行JSONp调用,并且响应firebug会出现“invalid label”错误

这是我的代码

site = "www.youtube.com";
url = "http://www.youtube.com/watch?v=slORb622ZI8";

$.getJSON("http://"+site+"/oembed?callback=?",{"format":"json","url":url},function(data){
    alert("hello:\n"+data);
    alert(data.provider_url);
});

任何人遇到oembed jsonp请求的类似问题?

解决方法

问题

YouTube API不支持JSONP – 请参阅:

> Issue 4329: oEmbed callback for JSONP.

不需要服务器端代理,也不需要API密钥.

代替:

var url = "http://www.youtube.com/watch?v=slORb622ZI8";

$.getJSON("http://www.youtube.com/oembed?callback=?",{"format": "json","url": url},function (data) {
    alert("hello:\n"+data);
    alert(data.provider_url);
});

试试这个,使用@L_301_1@服务:

var url = "http://www.youtube.com/watch?v=slORb622ZI8";

$.getJSON("https://noembed.com/embed?callback=?",function (data) {
    alert("hello:\n" + data);
    alert(data.provider_url);
});

作为奖励,当您将网址更改为以下内容时,这也适用于Vimeo链接

var url = "https://vimeo.com/45196609";

和许多其他supported sites.

演示

请参阅JS Fiddle上的DEMO.

也可以看看

另见这些问题:

> Youtube Video title with API v3 without API key?
> Get Youtube information via JSON for single video (not feed) in Javascript

猜你在找的jQuery相关文章