富群兴 网络设计工作室
企业智慧ERP应用软件服务商

IP地址验证,IP地址验证接口

 二维码 1245
发表时间:2018-01-14 19:53

ERP系统中IP地址需要验证的场景

例如:

可以看见距离最近的门店,可以选择自己到店提货或者快递,这个是要进行IP地址判断


实现IP地址验证方法有很多:


1、网上有免费的地址验证,如新浪提供的:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=117.136.75.113

调用方法:

<script type="text/javascript" src="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js"></script><script type="text/javascript">// < ![CDATA[

// < ![CDATA[

//format参数设置返回格式 js/json //ip 要查询IP 可选 //反回格式如下: //var remote_ip_info = {"ret":1,"start":"117.89.35.0","end":"117.89.35.255","country":"\u4e2d\u56fd","province":"\u6c5f\u82cf","city":"\u5357\u4eac","district":"\u767d\u4e0b","isp":"\u7535\u4fe1","type":"","desc":""}; console.log(remote_ip_info["country"]+','+remote_ip_info["province"]+"省"+','+remote_ip_info["city"]+"市")//中国,江苏省,南京市

// ]]></script>

返回结果:

var remote_ip_info = {"ret":1,"start":-1,"end":-1,"country":"\u4e2d\u56fd","province":"\u798f\u5efa","city":"","district":"","isp":"","type":"","desc":""};

blob.png

除了新浪,还有很多平台提供免费IP地址验证,如下:

  • IP地址查询接口:http://apis.juhe.cn/ip/ip2addr,要先去https://www.juhe.cn/docs/api/id/1申请APPKEY

  • 新浪的IP地址查询接口:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js,新浪这个应该说是最不错的。并且返回的数据类型为可以自定义格式(默认为纯文本格式,根据format的参数定义,还可以返回JS、Json格式)。

  • 新浪多地域测试方法:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=219.242.98.111

  • 搜狐IP地址查询接口(默认GBK):http://pv.sohu.com/cityjson

  • 搜狐IP地址查询接口(可设置编码):http://pv.sohu.com/cityjson?ie=utf-8

  • 搜狐另外的IP地址查询接口:http://txt.go.sohu.com/ip/soip


但免费的总是很难百分百准确,有时会出现地址错误的情况,如广东的IP显示为福建或湖南省的,想要百分百准确的,就需要用到付费的API


2、付费的我们这里用到ip138.com提供的,目前客户反馈较好,没有发现有失误的现象,要查看 ip138.com上的接口文档,可以在上面注册一个帐号,查看下,我这里复制出来一部分分享下

如:

iP查询接口文档说明
接口地址
http协议: http://api.ip138.com/query/
https协议: https://api.ip138.com/query/

请求方式
get

示例1(Linux命令行下执行)
参数说明:
1. ip string ip地址 例如  117.25.13.123(可选,默认为请求者iP)
2. datatype string txt|jsonp|xml(可选,默认为jsonp)
3. callback string 回调函数 当前参数仅为jsonp格式数据提供(可选,默认为空)
4. token string 购买服务后会提供(必填)
curl " http://api.ip138.com/query/?ip=8.8.8.8&datatype=jsonp&callback=find" -H "token:cc87f3c77747bccbaaee35006da1ebb65e0bad57"
示例2(js引入推荐方案)
参数说明:
1. ip string ip地址 例如  117.25.13.123(可选,默认为请求者iP)
2. datatype string txt|jsonp|xml(可选,默认为jsonp)
3. callback string 回调函数 当前参数仅为jsonp格式数据提供(可选,默认为空)
4. sign string 签名验证 签名算法:md5("ip=" + ip + "&token=" + token)(必填)
5. oid string 购买服务后提供(必填)
6. mid string 购买服务后提供(必填)
 http://api.ip138.com/query/?ip=8.8.8.8&callback=find&oid={oid}&mid={mid}&sign=签名算法
示例3(为了您的token安全,请勿使用于js引入,js引入请参考示例2)
参数说明:
1. ip string ip地址 例如  117.25.13.123(可选,默认为请求者iP)
2. datatype string txt|jsonp|xml(可选,默认为jsonp)
3. callback string 回调函数 当前参数仅为jsonp格式数据提供(可选,默认为空)
4. token string 购买服务后会提供(必填)
 http://api.ip138.com/query/?ip=8.8.8.8&datatype=jsonp&callback=find&token=cc87f3c77747bccbaaee35006da1ebb65e0bad57
JSONP返回示例
说明:ret 值为 ok 时 返回data查询结果数据 为err时返回msg错误信息
{
   "ret": "ok",    // ret 值为 ok 时 返回 data 数据 为err时返回msg数据
   "ip": " 117.25.13.123",  // ip
   "data": [
       "中国",     // 国家
       "福建",     // 省会或直辖市
       "福州",     // 地区或城市
       "电信",     // 运营商
       "361000",  // 邮政编码(暂不提供)
       "0592"     // 地区区号(暂不提供)
   ]
}
XML返回示例
说明:ret 值为 ok 时 返回data查询结果数据 为err时返回msg错误信息
<xmlinfo>
 <ret>ok</ret>
 <ip> 117.25.13.123</ip>
 <data>
  <country>中国</country>
  <region>福建</region>
  <city>福州</city>
  <isp>电信</isp>
  <zip>361000(暂不提供)</zip>
  <zone>0592(暂不提供)</zone>
 </data>
</xmlinfo>
文本格式返回示例
 117.25.13.123 中国 福建 福州 电信 361000(暂不提供) 0592(暂不提供)

查询token使用情况
URL
 http://api.ip138.com/status/

请求方式
get

参数
1. token `string` ip查询服务token
示例
 http://api.ip138.com/status/?token=cc87f3c77747bccbaaee35006da1ebb65e0bad57
响应
{
   "ret":"ok",
   "data":{
       "reqs":10,   //当前小时请求数
       "hour":3000, //当前小时购买次数
       "package":19767 //备用次数
   }
}

文章参考:IP地址验证,IP地址验证接口

在线留言

在线留言

了解更多软件开发、行业ERP、企业官网应用服务

公司
*
手机
*
描述
*
验证码
 换一张
*
提交留言
联系QQ:2590552134
手机号码:13682478927
联系邮箱:2590552134@qq.com
联系地址:广东省深圳市龙岗区横岗镇新光一街35号
热搜词:ERP软件开发,进销存管理软件免费下载,企业管理软件,企业ERP管理系统
粤公网安备 44030702000841号
我们的使命是助力商家全渠道管理与业务拓展,同时在供应链重塑的背景下,实现商业模式的全新升级
——————
热线电话
136 8247 8927
website qrcode