首页 新闻 会员 周边 捐助

ajax post跨域, 是不是没有好的解决方案?

0
悬赏园豆:100 [已解决问题] 解决于 2015-07-02 09:27

现在需要获取第三方网站:

http://www.sge.com.cn/sgeclient/sgeData/public/json/delaydata.json 这里的信息!  

无权修改服务器端。 

试过jsonp的ajax请求, 无法获取内容。   以下代码能直接运行。 求高手调试下。 

<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
  <script language="javascript" type="text/javascript" src="http://libs.baidu.com/jquery/1.8.2/jquery.min.js"></script>
 </head>
  <body>
  <div id="BgDiv"></div>
  <script type="text/javascript"> 
function getData(){
 $.ajax({
    url: "http://www.sge.com.cn/sgeclient/sgeData/public/json/delaydata.json",
    dataType: "jsonp",crossDomain:true,
    data:{timestamp:new Date().getTime()},
    success:function(data){
        alert(ok);
    },error: function (result, status,s) {
                     alert(s);
                }
    });
}
getData();
 setInterval("getData()",3000);
 </script> 
 </body>
</html>

有没有ajax跨域的解决办法? 

难道我只能用webClient后台或者其它程序去采集这个json数据吗?

问天何必的主页 问天何必 | 老鸟四级 | 园豆:3311
提问于:2015-07-01 18:39
< >
分享
最佳答案
0

请求自己的后台,在后台发http请求吧

收获园豆:29
秋壶冰月 | 大侠五级 |园豆:5903 | 2015-07-01 22:24
其他回答(7)
0

浏览器是不会让你进行ajax post跨域的

收获园豆:20
dudu | 园豆:29642 (高人七级) | 2015-07-01 18:43

刚刚发现CORS似乎可以解决这个问题

支持(0) 反对(0) dudu | 园豆:29642 (高人七级) | 2015-07-02 09:42

@dudu: 要在返回的时候加上callback(json)的吧

支持(0) 反对(0) 天涯过者 | 园豆:177 (初学一级) | 2015-07-03 09:14

@天涯过者: 加callback是jsonp,而且只能get。CORS应该不需要加。

支持(0) 反对(0) dudu | 园豆:29642 (高人七级) | 2015-07-03 09:31

@dudu: post的时候不能加callback的吗?

支持(0) 反对(0) 天涯过者 | 园豆:177 (初学一级) | 2015-07-03 09:33
0

你的jsonp用得也不对,不能跨域就是不能跨~

收获园豆:20
幻天芒 | 园豆:37207 (高人七级) | 2015-07-01 20:45
0

JSONP是需要服务端支持的。

可以用嵌入隐藏的Flash(或者Silverlight)来支持跨域请求数据;HTML5也有特性支持跨域请求。这些我都没实践过,仅提供思路。

收获园豆:30
liqipeng | 园豆:1160 (小虾三级) | 2015-07-01 21:10
0

浏览器改设置。

收获园豆:1
angelshelter | 园豆:9914 (大侠五级) | 2015-07-01 23:06
0

跨域需要服务器配合,还是请求自己网站转发吧。简单省事。

晨雨零稀 | 园豆:204 (菜鸟二级) | 2015-07-03 08:58
0

服务器可以过滤请求的。需要服务器设置配合 Access-Control-Allow-Origin

Rookier | 园豆:652 (小虾三级) | 2015-07-03 11:40
0

后台服务器必须进行允许跨域请求才可以,考虑安全性问题默认是不允许的,除非对外接口做得很好

LGGGGG | 园豆:241 (菜鸟二级) | 2015-07-03 11:47
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册