版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bitree1/article/details/50299663
core.min.js:36 XMLHttpRequest cannot load http://【地址】. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://192.168.1.222:8080' is therefore not allowed access.
今天一个Ajax跨域问题,纠结我半天
- <html>
- <head>
- <title>title</title>
- <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
- <script>
- $.ajax({
- url:"http://map.oicqzone.com/gpsApi.php?lat=22.502412986242&lng=113.93832783228",
- type:'GET',
- success: function(data){
- $('body').append( "Name: " + data );
- }
- });
- </script>
- </head>
- <body> 测试Ajax跨域问题
- </body>
- </html>
没有结果,chrome用F12 下查看错误 得知:XMLHttpRequest cannot load http://map.oicqzone.com/gpsApi.php?lat=22.502412986242&lng=113.93832783228.
Origin http://localhost is not allowed by Access-Control-Allow-Origin. AJAX跨域问题产生。
搜了好久,得知解决方案:
一:使用jsonp格式, 如jquery中ajax请求参数 dataType:'JSONP'。
- <html>
- <head>
- <title>title</title>
- <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
- <script>
- $.ajax({
- url:"http://map.oicqzone.com/gpsApi.php?lat=22.502412986242&lng=113.93832783228",
- type:'GET',
- dataType:'JSONP',
- success: function(data){
- $('body').append( "Name: " + data );
- }
- });
- </script>
- </head>
- <body>
- 测试Ajax跨域问题
- </body>
- </html>
二,server端加上header设为 Access-Control-Allow-Origin:*
header("Access-Control-Allow-Origin: *"); # 跨域处理
问题就解决了。