没有被允许访问控制允许来源
问题描述:
我试图发送从本地服务器请求到YouTube服务器BU铬控制台显示以下错误没有被允许访问控制允许来源
没有被访问控制 - 允许 - 允许原产 代码是
http.open("POST", url, true);
http.setRequestHeader("Authorization", "AuthSub token=" + AccessToken);
http.setRequestHeader("GData-Version", 2);
http.setRequestHeader("X-GData-Key", "key=" + dev_key);
http.setRequestHeader("Content-Length", sendXML.length);
http.setRequestHeader("Content-Type", "application/atom+xml; charset=UTF-8");
http.onreadystatechange = function()
{
if(http.readyState == 4) {
alert(http.responseXML);
alert(http.responseText);
document.getElementById("response").innerHTML=http.getAllResponseHeaders();
}
}
http.send(sendXML);
将通过实施JSONP回调函数来完成。但我不知道如何实现它
plz指导我
答
由于浏览器的same origin policy,您不能对YouTube API使用XMLHttpRequest。相反,你应该使用YouTube API的JSON-P功能:
http://code.google.com/apis/youtube/2.0/developers_guide_json.html
编辑:截至2012年5月18日,在YouTube API支持CORS:http://apiblog.youtube.com/2012/05/unlocking-javascripts-potential-with.html