使用jquery ajax jsonp读取包含json语法的.txt文件

时间:2013-10-21 19:51:31

标签: jquery json jsonp

远程服务器上的.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呢?

1 个答案:

答案 0 :(得分:0)

jsonp通过在回调函数中将数据包装在服务器上来工作。大多数服务器都允许您指定回调。由于您有一个静态文本文件,您需要将函数名称硬编码到文本文件中,然后在ajax调用中将该名称指定为参数。

json.txt文件更改为:

callback({ jsondata });

你的ajax调用了这个:

$.ajax({
    ...
    dataType: 'jsonp',
    jsonpCallback: 'callback'
}).done(function(data) { 
    console.log(data); 
});