小白跨域问题

后台给了一个地址 "http://appsrv.sct360.com/service/searchIntegralAccountTransDetails" ;
在浏览器能打开 看到的直接是JSON数据:{"code":"1","error":"u5165u53c2[pageflag]u683cu5f0fu4e0du6b63u786euff0cu671fu671bu7c7bu578b[u6574u578bu5b57u7b26u4e32]","data":{"SvcBody":{"total":""},"RspSvcHeader":{"tranTime":"110746506","returnCode":"09000005","tranDate":"20170713","globalSeqNo":"0790120170713110746c955","returnMsg":"u5165u53c2[pageflag]u683cu5f0fu4e0du6b63u786euff0cu671fu671bu7c7bu578b[u6574u578bu5b57u7b26u4e32]","backendSysId":"023","backendSeqNo":"0790120170713110746c955023010827"},"udid":"888888888888"}};
现在我用JQ去请求

clipboard.png

总是报跨域的错:
clipboard.png

如果指定dataType:'jsonp':

clipboard.png

则会报:

clipboard.png

是要在ajax里data的参数要跟后台确认下么
还是要用创建script标签去访问数据
该如何写呀

阅读 3.8k
8 个回答

ajax默认不允许跨域请求。可以使用CORS或者jsonp跨域。不管是用CORS,还是用jsonp,都需要后端支持对这个接口做相应调整。

后端接口没有对汉字做编码处理吧,怎么看是unicode编码,jsonp这种使用没问题的

自己通过后端拉取他的数据,然后返回jsonp,或者让后端设置允许跨域

让后端处理下,去掉最后的逗号

新手上路,请多包涵

JSONP 后端处理 [EnableCors(origins: "", headers: "", methods: "*")]

这个请求返回的格式不是jsonp的,你确定你后端是想你用jsonp?另外,看了你的第一个错误,搞事情啊,你在本地就用ajax去请求?

后台设置一下请求头就好,我这边后台就是这么处理的。图片描述

推荐问题