赞助商

javascript – 使用jQuery,从跨域url访问json,其中json可能形成不佳

发布时间:2019-07-11 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了javascript – 使用jQuery,从跨域url访问json,其中json可能形成不佳脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在使用jQuery的ajax函数来访问跨域url.该网址将返回json.我正处于发现阶段,但我想,因为json值包含几个’& quot’字符串,json eval会抛出错误并停止执行我的客户端脚本.我得到的错误是“未终止的字符串文字”.我知道如果我将返回的json硬编码放在本地div中并删除’& quot;’字符串(和几个隐藏的特殊字符),我可以成功地获得json到eval.
无论是通过解决方法还是通过修改我的代码,我可以做些什么来从URL获取json并将其存储在我的客户端javascript中作为有效的json对象?

我目前的代码.没有定义的函数(success,complete,error,dataFilter)执行:

$(function() {
  $.ajax({
  url: "http://www.codemash.org/rest/sessions.json?format=jsonp&callback=?",dataType: "jsonp",success: successFunc,complete: completeFunc,error: errorFunc,dataFilter: dataFilterFunc
});

});

function successFunc() { console.log('successFunc(). enter.'); }
function completeFunc() { console.log('complete(). enter.'); }
function errorFunc() { console.log('errorFunc(). enter.'); }
function dataFilterFunc(data,type) { 
  data.replace(/\W/g,' ');
  return data; 
}
最佳答案
问题是JSONP服务,它完全消除了回调参数.

JSONP响应只是一个使用callback get参数作为函数名的函数调用:

如果您查看某些JSONP服务的响应,它应该是这样的:

http://somesite.com/jsonp?callback=myCallback

会回来:

myCallback({/*json*/});

虽然you post返回普通valid JSON,但它不能作为JSONP响应处理.

总结

以上是脚本之家为你收集整理的javascript – 使用jQuery,从跨域url访问json,其中json可能形成不佳全部内容,希望文章能够帮你解决javascript – 使用jQuery,从跨域url访问json,其中json可能形成不佳所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:76874919,请注明来意。
标签:javascript