标签:style blog http color io os 使用 java ar
XMLHttpRequest cannot loadhttp://localhost/MongoTest/person.php. Origin http://localhost:81 is not allowed by Access-Control-Allow-Origin.
同源策略导致的跨域请求被拒绝
解决方法:
1.利用<script>标签
浏览器会阻止ajax请求非同源的内容,但没有限制<script>标签来访问非同源的内容,也没有限制使用动态添加<script>标签,所以可以采用这种方式打破这种限制。
<script type="text/javascript" src="http://localhost:80/MongoTest/person.php" ></script>
动态添加:即创建一个script标签,并且为src赋值,然后通过DOM操作添加到HTML文档中
2.JSONP
$.ajax({ type : "get", async:false, 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‘); } });
public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; String callbackFunName = context.Request["callbackparam"]; context.Response.Write(callbackFunName + "([ { name:\"John\"}])"); }
标签:style blog http color io os 使用 java ar
原文地址:http://www.cnblogs.com/jellybaobao/p/3994765.html