开发者社区> 问答> 正文

jquery ajax从一个网站向另一个网站请求,怎么实现? 400 请求报错 

我想在网站a中通过向网站b发送ajax请求来获取数据用于网站a中,但是没能找到解决方法,
google了很多资料,但是我的ajax仍然不行,我是通过如下方法来进行的:
我获取的网址是:http://ditu.google.cn/maps/geo,求高手指点。。。

        $.ajax({
            url:"geo",
            data:{q:$('#input-city').val(),output:'csv'},
            crossDomain:true,
            headers:{
                Origin:'http://ditu.google.cn',
                Referer:'http://ditu.google.cn/maps/geo'
            },
            success:function(data,textStatus,jqXHR){
                if(textStatus == 'success'){
                    alert(data);
                }
            }
        });

展开
收起
kun坤 2020-05-29 23:22:53 561 0
1 条回答
写回答
取消 提交回答
  • ajax跨域请求浏览器是不允许的哦~
    当然你可以尝试使用 jQuery中 $.getJSON()方法加载其它网域的数据,具体操作请参见jquery API

    ######回复 @布谷鸟 : 可以跨域,就是利用jquery中的ajax函数就行,但是确实要设置jsonp类型.######回复 @索隆 : 嗯######回复 @布谷鸟 : getJSON方法能返回不是json的数据吗?貌似它只是能通过jsonp完成吧######回复 @索隆 : 谢嘛呀,凑巧会这会一点也不知道能不能帮到你######谢谢!!!!######ajax不能跨域######我如何才能进行跨域请求###### jsonp
    跨于请求一般用的是 jsonp  还有iframe ######回复 @小囧 : 弄明白了,谢谢!!######回复 @小囧 : http://ditu.google.cn/maps/geo?q=china&output=csv我只想要获取它的经纬度信息######回复 @小囧 : 不行,那是别人的网站######可以丢后端服务器去处理不?######但是他是要服务端和客户端合作,但是我是要获取的一个第三方数据源,我对它不可控..怎么办?###### ajax不能跨域,你可以自己写一个后台,通过java跨域访问,然后将数据返回给自己的页面。
    这样,你的页面只需要ajax请求自己项目的java方法,来得到其他网站的相关数据。

    2020-05-29 23:22:58
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
WEB浏览器中即将发生的安全变化 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载