高德地图开发控制台
高德地图IP定位
申请key
![在这里插入图片描述](https://img-blog.csdnimg.cn/7b7d85d95ceb45fc9991aaffdb7ff376.png)
使用IP定位服务
export function getProvince(){
return new Promise((resolve,reject)=>{
let historyProvince=uni.getStorageSync("historyProvince");
if(historyProvince){
if((Date.now() - historyProvince.time) > 1000*60*60){
getIp().then(res=>{
resolve(res)
}).catch(err=>{
reject(err)
})
}else{
resolve(historyProvince.province);
}
}else{
getIp().then(res=>{
resolve(res)
}).catch(err=>{
reject(err)
})
}
})
}
function getIp(){
return new Promise((resolve,reject)=>{
uni.request({
url:"https://restapi.amap.com/v3/ip?key=上面申请的key",
success:res=>{
let str=""
typeof(res.data.province) == "string" ? str=res.data.province :str="火星"
resolve(str)
let obj={
province:str,
time:Date.now()
}
uni.setStorageSync("historyProvince",obj);
},
fail:err=>{
reject(err)
}
})
})
}