Response for JSONp request to youtube oembed call giving "invalid label" error
jquery, jsonp, oembed
Solution
Problem
YouTube API doesn't support JSONP - see:
- Issue 4329: oEmbed callback for JSONP.
Solution
There is no need for a server-side proxy and no API keys are required.
Instead of:
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);
});
Try this, using the Noembed service:
var url = "http://www.youtube.com/watch?v=slORb622ZI8";
$.getJSON("https://noembed.com/embed?callback=?",
{"format": "json", "url": url}, function (data) {
alert("hello:\n" + data);
alert(data.provider_url);
});
As a bonus this will also work with Vimeo links when you change `url` to:
var url = "https://vimeo.com/45196609";
and many other supported sites.
Demo
See DEMO on JS Fiddle.
See also
See also those questions:
- Youtube Video title with API v3 without API key?
- Get Youtube information via JSON for single video (not feed) in Javascript
Problem
I am making a JSONp call to youtube using oembed and on response firebug gives "invalid label" error Here is my code ``` 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); }); ``` Anyone ran into similar problem with oembed jsonp requests?