接口名稱: openBusinessView
此接口引用 JSAPI版本1.5.0,引用地址:https://res.wx.qq.com/open/js/jweixin-1.5.0.js。
要求用戶微信版本>=7.0.5
參數名 | 變量 | 類型[長度限制] | 必填 | 描述 |
---|---|---|---|---|
跳轉類型 | businessType | string[1,16] | 是 | 固定配置:wxpayScoreEnable 示例值:wxpayScoreEnable |
業(yè)務參數 | queryString | string[1,2048] | 是 | 使用URL的query string 方式傳遞參數,格式為key=value&key2=value2,其中value,value2需要進行UrlEncode處理。 示例值:見querystring 示例 |
apply_permissions_token=zyx53Nkey8o4bHpxTQvd8m7e92nG5mG2
參數名 | 變量 | 類型[長度限制] | 必填 | 描述 |
---|---|---|---|---|
預授權token | apply_permissions_token | string[1,2048] | 是 | 用于跳轉到微信側小程序授權數據,跳轉到微信側小程序傳入,有效期為1小時;apply_permissions_token可以從《商戶預授權API》接口的返回參數中獲取。 示例值:1230000109 |
let wechatInfo = navigator.userAgent.match(/MicroMessenger\/([\d\.]+)/i);
let wechatVersion = wechatInfo[1];
if (compareVersion(wechatVersion, '7.0.5') >= 0) {
goToWXScore();
} else {
// 提示用戶升級微信客戶端版本
window.href = 'https://support.weixin.qq.com/cgi-bin/readtemplate?t=page/
common_page__upgrade&text=text005&btn_text=btn_text_0'
}
/**
* 跳轉微信支付分
*/
function goToWXScore() {
wx.checkJsApi({
jsApiList: ['openBusinessView'], // 需要檢測的JS接口列表
success: function (res) {
// 以鍵值對的形式返回,可用的api值true,不可用為false
// 如:{"checkResult":{"openBusinessView":true},"errMsg":"checkJsApi:ok"}
if (res.checkResult.openBusinessView) {
wx.invoke(
'openBusinessView', {
businessType: 'wxpayScoreEnable',
queryString: 'apply_permissions_token=zyx53Nkey8o4bHpxTQvd8m7e92nG5mG2'
},
function (res) {
// 從微信側小程序返回時會執(zhí)行這個回調函數
if (parseint(res.err_code) === 0) {s
// 返回成功
} else {
// 返回失敗
}
});
}
}
});
}
/**
* 版本號比較
* @param {string} v1
* @param {string} v2
*/
function compareVersion(v1, v2) {
v1 = v1.split('.')
v2 = v2.split('.')
const len = Math.max(v1.length, v2.length)
while (v1.length < len) {
v1.push('0')
}
while (v2.length < len) {
v2.push('0')
}
for (let i = 0; i < len; i++) {
const num1 = parseint(v1[i])
const num2 = parseint(v2[i])
if (num1 > num2) {
return 1
} else if (num1 < num2) {
return -1
}
}
return 0
}