稳定好用免费的根据IP地址获取访客所在城市的接口分享给大家
因为前段时间刚好有这个需求,获取网站访客的IP地址,然后根据IP地址查询用户所在省市。这个IP获取位置虽然准确度并不会太高。估计90%所有吧。基本大部分还是比较可靠的。
我们可以借助高德地图免费提供的接口,这个接口用起来比较简单。传入Ip地址,返回城市信息,每天30万次免费调用额度,而且是200的QPS还有返回数据可选JSON,XML,足够满足大部分人使用了。
IP定位是一个简单的HTTP接口,根据用户输入的IP地址,能够快速的帮用户定位IP的所在位置。
使用API前您需先申请Key。若无高德地图API账号需要先申请账号。
使用说明
第一步,申请”web服务 API”密钥(Key);
第二步,拼接HTTP请求URL,第一步申请的Key需作为必填参数一同发送;
第三步,接收HTTP请求返回的数据(JSON或XML格式),解析数据。
如无特殊声明,接口的输入参数和输出数据编码全部统一为UTF-8。
IP定位
IP定位API服务地址:
URL | https://restapi.amap.com/v3/ip?parameters |
请求方式 | GET |
parameters代表的参数包括必填参数和可选参数。所有参数均使用和号字符(&)进行分隔。下面的列表枚举了这些参数及其使用规则。
- 请求参数
参数名 | 含义 | 规则说明 | 是否必须 | 缺省值 | |
---|---|---|---|---|---|
key | 请求服务权限标识 | 用户在高德地图官网申请Web服务API类型KEY | 必填 | 无 | |
ip | ip地址 | 需要搜索的IP地址(仅支持国内)
若用户不填写IP,则取客户http之中的请求来进行定位 |
可选 | 无 | |
sig | 签名 | 选择数字签名认证的付费用户必填 | 可选 | 无 | |
output | 返回格式 | 可选值:JSON,XML | 可选 | JSON |
- 返回结果参数说明
IP定位查询的响应结果的格式由请求参数output指定。
名称 | 含义 | 规则说明 | ||
---|---|---|---|---|
status | 返回结果状态值 | 值为0或1,0表示失败;1表示成功 | ||
info | 返回状态说明 | 返回状态说明,status为0时,info返回错误原因,否则返回“OK”。 | ||
infocode | 状态码 | 返回状态说明,10000代表正确,详情参阅info状态表 | ||
province | 省份名称 | 若为直辖市则显示直辖市名称;
如果在局域网 IP网段内,则返回“局域网”; 非法IP以及国外IP则返回空 |
||
city | 城市名称 | 若为直辖市则显示直辖市名称;
如果为局域网网段内IP或者非法IP或国外IP,则返回空 |
||
adcode | 城市的adcode编码 | |||
rectangle | 所在城市矩形区域范围 | 所在城市范围的左下右上对标对 |
- 服务示例
https://restapi.amap.com/v3/ip?ip=114.247.50.2&output=xml&key=<用户的key>
参数 | 值 | 备注 | 必选 |
---|---|---|---|
ip | 需要搜索的IP地址(仅支持国内) 若用户不填写IP,则取客户HTTP之中的请求来进行定位 |
否 |