这里站长和大家探讨一下jquery跨域请求外网数据的方法,站长用了有差不多俩个小时的时间在网上到处找相关的教程和资料,自己也测试摸索了半天,根本就没有什么实际性的效果,还是站长原来的方法比较实用,网上大多的方法也都是这个思路,不同的只是语言不一样矣。
站长要使用这个功能,是因为发现了淘宝的一个IP的API接口,可以很轻松的获取ip的实际地址,接口如下:
?ip=222.140.98.151按照一般的思路,用jquery里的get、post、或者ajax应该都能直接调用的,所以站长测试了下面的代码:$.get("?ip=222.140.98.151",function(d){alert(d)}); $.ajax({ url:"?ip=222.140.98.151", type:"get", success:function(d){alert(d);} });另外网上还说的什么返回的是json数据,要弄成Json,站长也测试了半天,但都是不行,也不报错,就是没反应,所以看到这篇文章的朋友们,肯定也是遇到和站长相同的问题,站长在这里劝大家不要浪费时间了,直接用jquery跨域获取外网数据是基本上行不通的,还是用下面站长的方法吧。站长用的方法的原理就是用ASP或者PHP来读取外网的数据,然后用jquery的ajax来访问自己网站内的这个asp文件或者php文件,下面是具体的代码:
$.getScript("",function(){//读取新浪的IP接口,来获取客户端的IP var ip=ILData[0]; $.ajax({ type:'GET', url:'/angel/get.asp?ip='+ip,//这个页面是就是本站内的读取外网数据的页面了,下面有这个页面的源码 success:function(d){ var d=$.parseJSON(d);//返回的是json数据,下面的是把相关的记录保存到cookie里。 $.cookie("loginip",d.data.ip,{path:'/',expires:1}); $.cookie("logindressP",d.data.region,{path:'/',expires:1}); $.cookie("loginisp",d.data.isp,{path:'/',expires:1}); $.cookie("logindressS",shi,{path:'/',expires:1}); } });下面来看本站的获取外网数据的get.asp文件的源码:<% dim con,ip ip=SafeRequest("ip") con=GetHttpPage("?ip="&ip,"GB2312") response.write con %>本文“关于jquery中ajax跨域请求外网数据的实现方法”的内容摘要为:关于jquery中ajax跨域请求外网数据的实现方法 由天使建站[]首发,转载请说明!
上一篇: 教你查看电脑是32位还是61位
下一篇: jquery中利用index()来获取当前元素在同辈元素的索引号