ajax 怎么访问 url 呀,为啥请求成功了,没有数据返回??请大神们给以指点,在此谢过

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax 怎么访问 url 呀,为啥请求成功了,没有数据返回??请大神们给以指点,在此谢过相关的知识,希望对你有一定的参考价值。

大神们要是测试的时候请自己弄个jquery

<html><head> <meta http-equiv="Content-Type" content="text/html; charset=gbk" /> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=WBixESWBKrsRjGRa4yuTnV5r"></script> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script> $(document).ready(function() $("button").click(function() $.get("http://api.map.baidu.com/location/ip", ak:"WBixESWBKrsRjGRa4yuTnV5r", ip:"61.143.101.10", coor:"bd09ll",function(data,status) alert("===============" + data); ); ); ); </script></head><body> <button>向页面发送 HTTP GET 请求,然后获得返回的结果</button></body></html>

参考技术A 原因:


阻止交叉源请求:同源策略不允许读取
http://api.map.baidu.com/location/ip?ak=WBixESWBKrsRjGRa4yuTnV5r&ip=61.143.101.10&coor=bd09ll
上的远程资源。可以将资源移动到相同的域名上或者启用 CORS 来解决这个问题。
建议:

你的处理思路有问题,你应该把请求百度的接口放到本地后台接口中,比如getapi.php,getapi.asp,在这些文件中,利用fileget curl等来获取到远程数据回执,然后再返回前台页面追问

我现在加了一个jQuery.support.cors = true; 在IE中可以执行了,在火狐中还是执行不了,而且errorThrown也是空。

追答

最好是后台处理,cors,我没怎么用过,帮不上你。ajax本身是不允许跨站的

参考技术B 嗯?我记得$.get的第二个参数是一个json, 其中ak,ip也应该用引号括起来的,否则成了变量了。 参考技术C 一般需要经过标准化处理(减均值,除方差)。好处可以使预测方差减小,同时使不同变量在同样的尺度下产生交集。其经济含义为并集的额外解释能力

ajax为啥不能导出文件

Ajax直接调用后台的下载方法是导出不了文件的,原因是ajax无法接收后台的文件流,所以,需要再次用window.location=url或者window.open(url)下载; 但是这样操作会有弊端,导出方法会调用两次,第一次是ajax进入导出方法,没有报错的话,就第二次进入方法,
所以不如直接用 window.location=url 下载
参考技术A 用普通的url请求,浏览器可以很容易下载保存文件。
例如:
<a href="xxx.rar">xxxrar</a>
window.open="xx.rar"

但是ajax为什么就不能下载呢?
$.ajax(
url:"xx.rar",
type:"post",
contentType:"application/vnd.ms-excel"
);本回答被提问者采纳
参考技术B 下载需要浏览器识别http头为文件,ajax的数据交互会将其解析为json,不能导出

以上是关于ajax 怎么访问 url 呀,为啥请求成功了,没有数据返回??请大神们给以指点,在此谢过的主要内容,如果未能解决你的问题,请参考以下文章

ajax的url请求到controller中对应的方法,为啥页面报404?

如何确定为啥 jQuery ajax $.post 请求不成功?

为啥AJAX请求处理成功了,还报404错误?

JQuery 中ajax请求为啥总不到后台 浏览器可以正常访问后台 求解!!!

用jquery $.ajax 请求后台老是url %5Bobject%20Object%5D而报404错误,为啥?

为啥我的ajax请求返回的页面不跳转