2
我試圖發送一個JSONP請求tinysong API用下面的代碼JSONP請求TinySong始終未能
var url = "http://tinysong.com/s/calvin+harris?format=json&limit=3&key=api_key"
function jsonpCallback(json) {
console.log(json);
}
var script = document.createElement('script');
script.src = url+'&callback=jsonpCallback';
document.body.appendChild(script);
但繼續在控制檯收到消息
Resource interpreted as Script but transferred with MIME type text/html:
我也嘗試以下,並得到相同的錯誤
$.ajax({
type: 'GET',
url: url,
jsonpCallback: 'jsonCallback',
dataType: 'jsonp',
success: function(json) {
console.log(json);
},
error: function(e) {
console.log(e.message);
}
});
function jsonCallback(json) {
console.log(json);
}
我相信api響應,因爲我檢查netwo Chrome中的rk選項卡,並可以看到來自API的響應。你對我能做什麼有什麼建議嗎?或者我需要編寫一個服務器端API來ping TinySong api?
所以你的建議有些工作,我可以看到,響應總是轉到錯誤回調。即使它在錯誤回調中,我現在正在研究如何提取我需要的數據。 – user1386101
問題似乎是TinySong API不支持JSONP。它以text/html而不是javascript的形式發回數據。此外,它忽略回調參數,因此決不會在客戶端調用成功功能。 –