$AccessToken獲取地址(GET):
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=appid(公眾號)&secret=secret(公眾號)
$jsapi_ticket獲取地址(GET):
https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token={$AccessToken(上面獲攘静肌)}&type=jsapi
$signature加密(sha1):
$timestamp=time();
$nonceStr=(16位的隨機(jī)字符串)
$url=(當(dāng)前需要自定義分享的頁面的完整地址)
$signature=sha1("jsapi_ticket={$jsapi_ticket}&noncestr={$nonceStr}×tamp={$timestamp}&url={$url}");
結(jié)果獲取內(nèi)容:
$signPackage = array(
"appId" => appid(公眾號),
"timestamp" => $timestamp,
"nonceStr" => $nonceStr,
"signature" => $signature,
);
JS調(diào)用地址:http://res.wx.qq.com/open/js/jweixin-1.1.0.js ? (注意舊版是1.0.0)
js部分:
wx.config({
debug: false,
appId: appId,
timestamp: timestamp,
nonceStr: nonceStr,
signature: signature,
jsApiList: [
// 所有要調(diào)用的 API 都要加到這個列表中
'checkJsApi',
'openAddress',
'onMenuShareTimeline',
'onMenuShareAppMessage'
]
});
這里寫了獲取地址及頁面內(nèi)容分享到朋友圈和分享給朋友变秦。(checkJsApi - 檢測)
自定義內(nèi)容部分(當(dāng)前測試安卓手機(jī)部分分享無效-蘋果手機(jī)正常 ? ? ?【糾結(jié)】):
wx.onMenuShareTimeline({
title: '分享標(biāo)題', // 分享標(biāo)題
link: 'http://xxx/', // 分享鏈接烧栋,該鏈接域名或路徑必須與當(dāng)前頁面對應(yīng)的公眾號JS安全域名一致
imgUrl: 'http://xxx/static/web/images/vip.png', // 分享圖標(biāo)
success: function () {
// 用戶確認(rèn)分享后執(zhí)行的回調(diào)函數(shù)
},
cancel: function () {
// 用戶取消分享后執(zhí)行的回調(diào)函數(shù)
}
});
wx.onMenuShareAppMessage({
title: '分享標(biāo)題', // 分享標(biāo)題
desc: '分享描述', // 分享描述
link: 'http://xxx.com/', // 分享鏈接,該鏈接域名或路徑必須與當(dāng)前頁面對應(yīng)的公眾號JS安全域名一致
imgUrl: 'http://xxx.com/yue_ico.png', // 分享圖標(biāo)
type: '', // 分享類型,music屎鳍、video或link,不填默認(rèn)為link
dataUrl: '', // 如果type是music或video,則要提供數(shù)據(jù)鏈接,默認(rèn)為空
success: function () {
// 用戶確認(rèn)分享后執(zhí)行的回調(diào)函數(shù)
},
cancel: function () {
// 用戶取消分享后執(zhí)行的回調(diào)函數(shù)
}
});
獲取微信共享地址:
檢測:
wx.checkJsApi({
jsApiList: [
'openAddress'
],
success: function (res) {
console.log(JSON.stringify(res));
}
});
實(shí)際應(yīng)用(點(diǎn)擊獲取地址):
$("#address").click(function(){
wx.ready(function () {
wx.openAddress({
success: function (res) {
alert('收貨人姓名:' + res.userName); ?
alert('收貨人電話' + res.telNumber);
alert('郵編' + res.postalCode);
alert('國標(biāo)收貨地址第一級地址' + res.provinceName);
alert('國標(biāo)收貨地址第二級地址' + res.cityName);
alert('國標(biāo)收貨地址第三級地址' + res.countryName);
alert('詳細(xì)收貨地址信息' + res.detailInfo);
alert('收貨地址國家碼' + res.nationalCode);
}
});
});
});
總結(jié):
1.接口地址最新版本 【1.1.0】 http://res.wx.qq.com/open/js/jweixin-1.1.0.js
2.$signature簽名加密更新后跟以前舊版的不一樣的碌秸,注意:noncestr獲取的時候?qū)懛ㄐ枰髮?nonceStr ? 而加密的時候小寫就可以了
3.只有自己實(shí)際測試才知道,很多時候一個小東西的處理不當(dāng)相當(dāng)糾結(jié)悄窃,官方的說明也不好而且寫了多個地方更新的又不一致讥电,還是老實(shí)自己測試。
3.隨意記錄一下轧抗,不好勿噴恩敌。