远程服务器上的.txt文件包含我需要检索的json语法。我正在使用jsonp,因为它在另一个域上。
我试过这样的话:
$.getJSON('http://www.server1.com/json.txt'+'?callback=?', function(data){
console.log(data);
});
.txt文件为here 但是当json的第一个名字 - 值对被“解析”时,我得到一个错误:
意外的令牌:
我尝试更改txt.json并添加了var mydata={ jsonSyntax }
,这样我就不会收到错误,但没有数据记录到控制台。
那么如何使用jsonp请求和解析json.txt呢?
答案 0 :(得分:0)
jsonp通过在回调函数中将数据包装在服务器上来工作。大多数服务器都允许您指定回调。由于您有一个静态文本文件,您需要将函数名称硬编码到文本文件中,然后在ajax调用中将该名称指定为参数。
将json.txt
文件更改为:
callback({ jsondata });
你的ajax调用了这个:
$.ajax({
...
dataType: 'jsonp',
jsonpCallback: 'callback'
}).done(function(data) {
console.log(data);
});