微信js sdk開發獲取簽名和獲取地理位置介面示例

2022-05-03 07:27:09 字數 2038 閱讀 9388

準備工作:

在測試賬號裡先填寫介面配置資訊和js介面安全網域名稱(這個是必須的)

示例:頁面中需要點選圖示獲取地理位置資訊

流程如下:

點選按鈕->觸發事件去獲取->ajax非同步獲取簽名->拿簽名去獲取地理位置->得到經緯度->高德api再去逆地理編碼獲取真實位址資訊

function getcurrentlocation(), function(json));

//獲取地理位置(經緯度)

wx.getlocation(

});}else

},'json');

}

後端**如下:(主要是用來獲取js-sdk的簽名,非常重要)
/*---------------------------------獲取js-sdk簽名   start--------------------------------*/

/*** 獲取js-sdk呼叫許可權,獲取簽名

*/public function getwxsdksign()

// 獲取jsapi_ticket

$jsapi_ticket = $this->_getjsapiticket($accesstoken);

if(empty($jsapi_ticket))

$noncestr = $this->make_noncestr(); //獲取隨機字串

$timestamp = time();

$signature = $this->make_signature($noncestr,$timestamp,$jsapi_ticket,$url);

$sdksign = array(

'signature' => $signature, //簽名

'timestamp' => $timestamp, //時間戳

'noncestr' => $noncestr, //隨機字串

);$this->ajaxreturn(['code'=>0, 'data'=>$sdksign]);

}/**

* 此accesstoken 與 getuseraccesstoken不一樣,注意一下定要全域性快取,否則每日次數限制很快就gg了

* 獲得accesstoken

*/private function getaccesstoken()

return $access;

}/**

* 獲取js證明 注意一下定要全域性快取,否則每日次數限制很快就gg了

* @param $accesstoken

*/private function _getjsapiticket($accesstoken)

return $ticket;

}//獲取隨機字串

public function make_noncestr()

$noncestr = implode($codes);

return $noncestr;

}/**

* 獲取簽名

* @param string $noncestr 隨機字串

* @param int $timestamp 時間戳

* @param string $jsapi_ticket 獲取的ticket憑據

* @param string $url 獲取簽名的頁面的url 'http://*****' eg:''

*/function make_signature($noncestr,$timestamp,$jsapi_ticket,$url)

/*---------------------------------獲取js-sdk簽名 end--------------------------------*/

以上php部分就是完全的非同步獲取簽名的**,裡邊只需要注意

注意access_tokenjsapi_ticket的快取

注意$url換成自己的,我這個是動態的,所以前段傳回的

微信 JSSDK開發

js介面安全網域名稱設定 mi.com 前面不用帶www http,網域名稱必須備案過 2.引入js檔案 在需要呼叫js介面的頁面引入如下js檔案,支援https 3.通過config介面注入許可權驗證配置 wx.config 4.通過ready介面處理成功驗證 wx.ready function ...

獲取微信簽名

url post path getjsapi public datacentergetjsapi string url 獲取js簽名 獲得js授權的簽名資訊 throws unsupportedencodingexception public static string getjssignature...

呼叫介面簽名 用Node實現微信JS SDK的簽名

2 目前access token的有效期通過返回的expire in來傳達,目前是7200秒之內的值。中控伺服器需要根據這個有效時間提前去重新整理新access token。在重新整理過程中,中控伺服器可對外繼續輸出的老access token,此時公眾平台後台會保證在5分鐘內,新老access t...