Jquery Post - Itunes API返回200并出错

时间:2012-08-26 09:29:22

标签: jquery json api post itunes

json回复有效
http://itunes.apple.com/search?term=jack+johnson

但我收到错误......为什么?

示例: http://jsfiddle.net/36Vxs/

JS

$(document).ready(function() {
var jqxhr = $.ajax( "http://itunes.apple.com/search?term=jack+johnson" )
    .done(function(data) { console.log(data); })
    .fail(function(data) { console.log(data); })
 });

提前致谢!

2 个答案:

答案 0 :(得分:6)

您无法从其他域获取JSON。你需要获得JSONP。以下作品:

$(document).ready(function() {
    $.ajax({
        url: "http://itunes.apple.com/search?term=jack+johnson",
        dataType: 'JSONP'
    })
    .done(function(data) { console.log(data); })
    .fail(function(data) { console.log(data); })
 });

答案 1 :(得分:0)

感谢您发布文档链接,它告诉您使用JSONP - 请参阅此处http://jsfiddle.net/joevallender/rMKZw/2/

$(document).ready(function() {
  $.getJSON(
      'http://itunes.apple.com/search?term=jack+johnson&callback=?', 
      function ( data ) {
         console.log(data)

     });
 });

它没有通过

跳出来

Note: When creating search fields and scripts for your website, you should use dynamic script tags for your xmlhttp script call requests. For example:

<script src="http://.../search?parameterkeyvalue&callback="{name of JavaScript function in webpage}"/>

如果你看到类似的东西,你需要使用$ .getJSON并添加callback =?在jQuery中请求调用JSONP