ajax如何解决跨域问题

来源:互联网 发布:智能网络平板电视 编辑:程序博客网 时间:2024/05/19 01:09

什么是跨域?
简单的来说,出于安全方面的考虑,页面中的JavaScript无法访问其他服务器上的数据,即“同源策略”。而跨域就是通过某些手段来绕过同源策略限制,实现不同服务器之间通信的效果

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,而JSONP(JSON with Padding)则是JSON 的一种“使用模式”,通过这种模式可以实现数据的跨域获取。

ajax跨域问题,这里使用 jsonp 来完成,该方式有一个弊端,在提交POST请求的时候,它依然会使用GET的方式传递参数,这点目前还没有解决。

解决跨域有两个地方需要主要

前端写法
后台返回数据库格式: callback + “({name:’tzy’,phone:’123’})”
$.ajax({
url:”http://qxw.tunnel.qydev.com/czBlDial201606/ClickAction.ihtml“,
dataType:’jsonp’,
type:’get’,
data:{‘source’:’充话费’},
success:function(data){
alert(“ajax跨域调用成功”);

      },           });

后台写法 (必须返回这样的格式,不然会报错)
返回的json格式需要 callback包起来
response.getWriter().println(callback + “(“+json.toJSONString()+”)”);

0 0
原创粉丝点击