【发布时间】:2014-03-14 20:17:26
【问题描述】:
我写了这段代码:
(function($) {
var url = 'http://surfujpametno.roditelji.me/2014/01/23/surfujpametno-aplikacija-za- android/?json=get_all_posts&callback=?';
$.ajax({
type: 'GET',
url: url,
async: false,
jsonpCallback: 'callback',
contentType: "application/json",
dataType: 'jsonp',
success: function(json) {
console.log(json.status);
console.log(json);
try{
json = $.parseJSON(json);
alert(json);
}catch(e){
alert('invalid');
}
},
error: function(e) {
console.log(e.message);
}
});
})(jQuery);
我得到“无效”...如果我删除 try and catch 我得到这个错误:http://prntscr.com/2sf8bd
【问题讨论】:
-
当您在参数中获取它时,您的 JSON 不是已经解析了吗,因为您说 content-type 是 'application/json' ?
-
var url = "surfujpametno.roditelji.me/2014/01/23/…?";
-
我删除了 dataType 并收到此错误:XMLHttpRequest cannot load surfujpametno.roditelji.me/2014/01/23/…?。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问 Origin 'null'。
-
你提到了
dataType:'jsonp';,所以不需要$.parseJSON -
另外,您的 sn-p 中的 URL 与您在问题中提到的 URL 不一样...只是做了一个小提琴,对我来说似乎还不错:jsfiddle.net/yx8Fm
标签: javascript jquery ajax json url