爱程序网

ajax 跨域解决方法

来源: 阅读:

最近在开发过程中,使用ajax去异步调取图片。在开发中这个功能没什么问题,可以后来提测,重新部署之后就有问题了,这就是ajax的跨域问题。

ajax核心对象XMLHttpRequest本身是不支持跨域的,这是由于javascript的同源策略所导致。但是我们可以通过其他方法来解决ajax的跨域问题。

2015年3.4日补充:其实解决之道分为两种,利用jsonp ,或者转化成不跨域的解决方法

1  由于我们是利用了jquery来写的ajax,我们一开始是准备 利用jsonp来解决的,客户端类似下面写法

$.ajax({	type : "get",	url : "http://www.xxx.com/ajax.do",	dataType : "jsonp",	jsonp: "callbackparam",//服务端用于接收callback调用的function名的参数	jsonpCallback:"success_jsonpCallback",//callback的function名称	success : function(json){		alert(json);		alert(json[0].name);	},	error:function(){		alert('fail');	}});