jjzjj

javascript - "Resource interpreted as script but transferred with MIME type application/json"使用 Youtube 的 JavaScript API

coder 2025-02-15 原文

我在使用 Google Chrome 的 JavaScript 控制台时收到“资源解释为脚本但使用 MIME 类型 application/json 传输”的错误消息。

我目前正在本地计算机上运行以下代码:

var URL = "";
var YOUTUBE_ROOT = "http://gdata.youtube.com/feeds/api/videos?alt=jsonc&v=2";
var start_index = "&start-index=1";
var callback = "&jsonp=?"
function searchYouTube()
{
  var q = encodeURIComponent(jQuery("#query").val());
  var query = "&q="+q;
  URL = YOUTUBE_ROOT+start_index+query+callback; 
  alert(URL);
    $.getJSON(URL, function(data) {
        $.each(data.items, function(i, item) {
            alert(item);
        });
    });


}


jQuery(document).ready(function () {
     jQuery("#searchYouTube").click(searchYouTube);

});

我可以知道是什么导致了错误吗?

我试过使用“回调=?” , 'jsoncallback=?'对于回调,但所有导致 同样的错误信息。

我可以知道如何解决这个问题吗?

最好的问候。

最佳答案

既然你使用 JSONP,你应该像这样编码恕我直言:

$.ajax(URL, {
    crossDomain:true, 
    dataType: "jsonp", 
    success:function(data,text,xhqr){
        $.each(data, function(i, item) {
            alert(item);
        });
    }
});

正确的参数是 callback 但 jQuery 会自动生成一个,所以不要指定它。

关于javascript - "Resource interpreted as script but transferred with MIME type application/json"使用 Youtube 的 JavaScript API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5232753/

有关javascript - "Resource interpreted as script but transferred with MIME type application/json"使用 Youtube 的 JavaScript API的更多相关文章

随机推荐