先说下我要实现的功能:写1个js,纯js,不掺杂后端语言的情况下实现
外国IP访问网站不跳转,国内IP指定地方不跳转,其他地区都跳转
我的解决思路是:
找到了1个ip库,前端页面中用
访问,结果得到了浏览器ip
ip = returnCitySN.cip; //获得设备ip
然后想通过var url = "http://freeapi.ipip.net/"+ip; 这个接口ajax get方式访问得到他的数据
访问目标站的数据格式是:
["中国","天津","天津","","鹏博士"]
很奇怪就是得不到我想要的效果,贴上代码,希望有人能指点我一下,不甚感激。
无标题文档ip = returnCitySN.cip; //获得设备ip
var url = "http://freeapi.ipip.net/"+ip;
var request = new XMLHttpRequest()
request.onreadystatechange = function () { // 回调
if (request.readyState === 4) { // 成功
if (request.status == 200) {
alert(request.responseText) // 这个打印不出来数据?
} else {
console.log(request.status)
}
}
}
// GET 请求
request.open('GET',url)
request.send()
alert(request.responseText)//这个也打印不出来数据?
另外我在这个案例中(http://www.w3school.com.cn/ti...)也尝试了将
下面onclick里的参数由他自带的
/example/xdom/note.xml
换成我想的
http://freeapi.ipip.net/120.227.44.221
然后提交代码,访问还是获取不了,不知道问题出在哪里?
像这种接口
http://pv.sohu.com/cityjson?ie=utf-8
它很好,它是返回来了1个js的代码语句
var returnCitySN = {"cip": "120.227.44.221", "cid": "CN", "cname": "CHINA"};
我很容易就在js里使用了它返回的数据
但是像这个接口
http://freeapi.ipip.net/120.227.44.221
它返回的是个框框[]数据
["中国","湖南","长沙","","移动"]
我该如何处理它?
另外我在我的网站里使用ajax请求别的网站的数据,这是属于ajax跨域请求这个概念吗?