jQuery 1.3.2 + JSON +跨域:如何过滤返回的数据?

时间:2009-09-30 09:09:34

标签: jquery json

我读了post about making JSON calls (with jQuery) safer by adding a dataFilter to parse the returned string

然而,在帖子中它被解释(更具体地说,在上一篇文章中链接的上一篇文章中):

  

请注意删除上面$ .ajax()代码中的dataType参数。这是为了防止仅包含单个字符串的服务响应的双倍评估所必需的。

     

在内部,jQuery使用dataType参数和隐式类型的响应组合。如果dataType是“json”而typeof(response)是“string”,那么jQuery使用eval()来反序列化响应。

但是因为我正在进行跨域调用,所以我无法删除必须设置为json [p]的dataType以允许调用。但是使用这个set不会调用dataFilter,有没有办法在不编辑jQuery内部的情况下过滤数据?

我错过了任何重要的事情,请问。

谢谢, 克里斯M

1 个答案:

答案 0 :(得分:1)

jsonp实现通过将SCRIPT标记注入文档的头部来实现它的跨域魔术。在评估之前,没有任何一点可以放入过滤器来解析该响应。

相关问题