JSONP,你需要更改你的JSON文件吗?

时间:2011-12-30 14:17:39

标签: ajax json jsonp

有人可以帮助我更好地理解JSONP吗?

我有一个json文件被推出到一个网址。但是由于同源策略,我需要使用JSONP。我的问题是我是否需要更改实际的JSON文件,或者使用jquery的ajax调用,dataType:' jsonp'为我做的工作?

2 个答案:

答案 0 :(得分:1)

您必须在函数调用中包装JSON数据。

赞,someFunctionName(YOUR_EXISTING_JSON_DATA);

和, 使用someFunctionName作为jsonp回调

请参阅Cross-domain communications with JSONP

答案 1 :(得分:1)

JSONP只不过是带有填充的JSON,即函数调用包装的JSON。此格式有助于将JSON数据传递给java脚本。

JSON出现了,当JSON即java脚本对象可用于表示以前以XML形式表示的数据时。
例如, var data={...};是json格式的数据。而在JSONP中,相同的数据写为getData(data);

在ajax调用的场景中,dataType:'jsonp',json数据必须作为参数传递给函数。您可以在该功能中访问响应。

如果您可以提供一些代码,则可以轻松解决您的查询问题。有关JSONP的信息可在维基百科here上找到。