微信公眾平台開發 106 網頁獲取使用者地理位置

2021-09-08 10:55:50 字數 2709 閱讀 5653

生成js-sdk許可權驗證簽名

使用地理位置介面獲取座標

參考以下文件獲取access_token(有效期7200秒,開發者必須在自己的服務全域性快取access_token):

用第一步拿到的access_token 採用http get方式請求獲得jsapi_ticket(有效期7200秒,開發者必須在自己的服務全域性快取jsapi_ticket),介面位址如下

成功返回如下json:

獲得jsapi_ticket之後,就可以生成js-sdk許可權驗證的簽名了。

簽名生成規則如下:參與簽名的字段包括noncestr(隨機字串), 有效的jsapi_ticket, timestamp(時間戳), url(當前網頁的url,不包含#及其後面部分) 。對所有待簽名引數按照欄位名的ascii 碼從小到大排序(字典序)後,使用url鍵值對的格式(即key1=value1&key2=value2…)拼接成字串string1。這裡需要注意的是所有引數名均為小寫字元。對string1作sha1加密,欄位名和字段值都採用原始值,不進行url 轉義。

即signature=sha1(string1)。 示例:

步驟1. 對所有待簽名引數按照欄位名的ascii 碼從小到大排序(字典序)後,使用url鍵值對的格式(即key1=value1&key2=value2…)拼接成字串string1:

步驟2. 對string1進行sha1簽名,得到signature:

0f9de62fce790f9a083d5c99e95740ceb90c27ed
完整**如下

在需要呼叫js介面的頁面引入如下js檔案,(支援https):

<

script

src=""

>

script

>

所有需要使用js-sdk的頁面必須先注入配置資訊,否則將無法呼叫。

wx.config();
地理位置需要在頁面載入時就呼叫,需要把相關介面放在ready函式中呼叫來確保正確執行

wx.ready(function

() );

5.1 通過checkjsapi判斷當前客戶端版本是否支援指定獲取地理位置

wx.checkjsapi(

}});

5.2. 使用getlocation介面獲取地理位置座標

wx.getlocation(,

cancel:

function

(res)

});

彈出請求獲取頁面

js成功獲取地理位置引數

微信公眾平台開發 微信網頁授權

條件 關於網頁授權的兩種scope的區別說明 以snsapi userinfo為scope發起的網頁授權,彈出授權頁面,可通過openid拿到暱稱 性別 所在地。並且,即使在未關注的情況下,只要使用者授權,也能獲取其資訊。關於網頁授權access token和普通access token的區別 而普...

微信公眾平台開發獲取 UnionID

過程略。注意兩個不同的使用者資訊 在不同的公眾賬號下openid是不一樣的,而他們的unionid卻是一樣的。其他的資訊不具有唯一性,沒有比較意義。但基本資訊是一致的。這樣就知道了關注兩個公眾賬號的其實是同乙個人。對於擁有多個賬號的企業來說,unionid可以幫助識別不同公眾賬號下的使用者是否是同乙...

微信公眾平台網頁開發實戰

index.html檔案增加如下 html5網頁 01 02 03 04 05 第3章 3.2節 分享介面的作用 06 07 16 17 18 19分享介面的作用!20 21 shareapi.js增加分享api的測試封裝方案 01 宣告 02 為了方便讀者朋友,這裡省略配置環境,直接寫檢測 03 ...