?在開發(fā)小程序時(shí)要獲取當(dāng)前位置信息,小程序API中給了非常便捷的方法:wx.getLocation(OBJECT)
官方API在此:https://developers.weixin.qq.com/miniprogram/dev/api/location.html#wxgetlocationobject
但是看到返回值時(shí)發(fā)現(xiàn)并沒有返回當(dāng)前位置的地理信息(省份,城市,區(qū)縣等名稱),只返回了經(jīng)緯度等.
我的做法是:
1.請(qǐng)打開,http://lbs.qq.com/webservice_v1/guide-gcoder.html.這是騰訊官方的位置服務(wù).需要使用逆地址解析將經(jīng)緯度轉(zhuǎn)化為地理信息.
2.先去位置服務(wù)注冊(cè)并申請(qǐng)KEY.之后就可以使用官方提供的接口請(qǐng)求了,接口如下:
https://apis.map.qq.com/ws/geocoder/v1/?location=lat<緯度>,lng<經(jīng)度>&key=你申請(qǐng)的key
備注:為保證數(shù)據(jù)傳輸安全,提高安全性,騰訊位置服務(wù)WebServiceAPI將不再支持HTTP方式調(diào)用。請(qǐng)開發(fā)者盡快調(diào)整,將現(xiàn)有通過HTTP方式調(diào)用的切換成?HTTPS?調(diào)用,以避免受到影響。 平臺(tái)將于?2018年9月30日?停止對(duì)HTTP方式調(diào)用的支持。
具體代碼如下:
wx.getLocation({
? ? ? success: function(res) {
? ? ? ? wx.request({
? ? ? ? ? url: 'https://apis.map.qq.com/ws/geocoder/v1/?location=lat<緯度>,lng<經(jīng)度>&key=你申請(qǐng)的key',
? ? ? ? ? ?success: function (result) {
? ? ? ? ? ? ? ? ? console.log(result.data.result.address_component.city)
? ? ? ? ? }
? ? ? ? })
? ? ? },
? ? })
備注:result.data.result.address_component.city是獲取城市名稱,如大家有其他需求,可以自行獲取.騰訊位置服務(wù)的官方文檔上都有.
謝謝大家~