现在各大平台发表文章、评论等内容都显示出了用户的IP属地,现在来探讨一下小程序使用云开发怎么获取并保存用户IP属地。
获取到用户ip,这里演示使用云函数获取。
使用腾讯位置服务的WebService API的IP定位接口,获取归属地。
响应示例:
{
"status": 0,
"message": "Success",
"result": {
"ip": "111.206.145.41",
"location": {
"lat": 39.90469,
"lng": 116.40717
},
"ad_info": {
"nation": "中国",
"province": "北京市",
"city": "北京市",
"district": "",
"adcode": 110000
}
}
}
演示代码:
// 云函数入口文件
const cloud = require('wx-server-sdk')
const axios = require('axios')
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
const wxContext = cloud.getWXContext();
var ip = wxContext.CLIENTIP ? wxContext.CLIENTIP : wxContext.CLIENTIPV6;
if (ip) {
const res = await axios.get("https://apis.map.qq.com/ws/location/v1/ip", {
params: {
ip: ip,
key: "xxx" // 使用腾讯WebService API:https://lbs.qq.com/service/webService/webServiceGuide/webServiceIp
}
});
return res;
}
return null;
}