我有一个奇怪的问题,我试图从IP获取国家代码(就像美国的代码),我需要使用免费的API,所以我发现ipify对于IP (工作良好),并试图使用geoplugin作为国家代码,下面是我的代码:
$.getJSON('https://api.ipify.org/?format=json', function(r){
alert(r.ip);
$.getJSON('http://www.geoplugin.net/json.gp?ip=' + r.ip + "jsoncallback=?", function(y) {
alert(y.geoplugin_countryCode);
});
});IP显示处于警报状态,就像我想要的那样,但geoplugin有问题,它显示了浏览器中的错误:Uncaught SyntaxError: Unexpected token :,就像它在那个JSON中找到了错误一样,它试图运行代码(更改了我的IP):https://gyazo.com/c96a9aa50ac1d886b37b95b583e1415e
发布于 2018-04-19 11:43:02
在这里!下面的代码片段成功地记录了国家代码.
因此,用下面的代码片段替换代码,我使用AJAX来实现您的目标:
$.ajax({
url : 'https://api.ipify.org/?format=json',
dataType : 'JSON',
success : function(data) {
alert( data.ip );
$.ajax({
url : 'http://www.geoplugin.net/json.gp?' + data.ip + '&jsoncallback=?',
dataType : 'JSON',
success : function(data) {
alert( data.geoplugin_countryCode);
//you can print variable: "data" as well, or any property as data.someProperty
},
error : function(error) {
console.log("Could not get information: " + error);
}
});
},
error : function(error) {
console.log("Could not get information: " + error);
}
});享受吧!
发布于 2018-04-19 10:56:28
更新如下
$.getJSON('https://api.ipify.org/?format=json', function(r){
$.getJSON('http://www.geoplugin.net/json.gp?ip=' + r.ip, function(y){
alert(y.geoplugin_countryCode);
});
});您可以将它与另一种方法一起使用。在页面中添加脚本
<script language="JavaScript" src="http://www.geoplugin.net/javascript.gp" type="text/javascript"></script>
<script type="text/javascript">
alert(geoplugin_countryCode());
</script>https://stackoverflow.com/questions/49918821
复制相似问题