微信瀏覽器中實現(xiàn)跳轉(zhuǎn)
使用微信官方接口 wx-open-launch-weapp(該方法只開放給已認證的服務(wù)號或者小程序云開發(fā)的靜態(tài)網(wǎng)站托管綁定的域名下的網(wǎng)頁)
案例代碼
<wx-open-launch-weapp
id="launch-btn"
username="gh_xxxxxxxx"
path="pages/home/index?user=123&action=abc"
>
<script type="text/wxtag-template">
<style>.btn { padding: 12px }</style>
<button class="btn">打開小程序</button>
</script>
</wx-open-launch-weapp>
<script>
var btn = document.getElementById('launch-btn');
btn.addEventListener('launch', function (e) {
console.log('success');
});
btn.addEventListener('error', function (e) {
console.log('fail', e.detail);
});
</script>
相關(guān)文檔
目錄 | 微信開放文檔微信開發(fā)者平臺文檔https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_Open_Tag.html#21
外部瀏覽器中實現(xiàn)跳轉(zhuǎn),需要使用URL Scheme的方式來實現(xiàn)(URL Scheme的有效期只有30天)
????????前端在獲取到URL?Scheme后通過以下代碼就可以實現(xiàn)跳轉(zhuǎn)
????????文檔點擊這里?URL Scheme文檔
location.href = 'weixin://dl/business/?t= *TICKET*'
- 注意: 獲取URL Scheme的方式有兩種
URL Scheme獲取幫助文檔
方式一:小程序管理后臺工具生成
一、生成步驟
1、?地址
微信公眾平臺
2、?掃碼登錄
3、?登陸后進入首頁
「工具」(在右上角)–「生成 URL Scheme」
4、?進入生成 URL Scheme
5、?生成 URL Scheme
(1)?參數(shù)說明
屬性 | 值 | 說明 |
有效期 | 到期失效(可以自己選擇失效時間)、永久有效 | 生成的 scheme 碼類型 |
小程序頁面路徑 | 示例:pages/index/index | 通過 scheme 碼進入的小程序頁面路徑,必須是已經(jīng)發(fā)布的小程序存在的頁面,不可攜帶 query。path 為空時會跳轉(zhuǎn)小程序主頁。 |
啟動query參數(shù) | 示例:channel=test&ad=1001 | 通過 scheme 碼進入小程序時的 query,最大1024個字符,只支持數(shù)字,大小寫英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~ |
(2)?示例
1)?生成
2)?生成結(jié)果
二、參考文檔
獲取 URL Scheme
方式二:服務(wù)器端(接口)方式
一、?說明
獲取小程序 scheme 碼,適用于短信、郵件、外部網(wǎng)頁、微信內(nèi)等拉起小程序的業(yè)務(wù)場景。通過該接口,可以選擇生成到期失效和永久有效的小程序碼,目前僅針對國內(nèi)非個人主體的小程序開放,詳見獲取 URL scheme。
調(diào)用方式:
- HTTPS 調(diào)用
- 云調(diào)用
二、?HTTPS 調(diào)用
1、接口地址
地址 | 請求方式 |
https://api.weixin.qq.com/wxa/generatescheme?access_token=ACCESS_TOKEN | POST |
2、請求參數(shù)及說明
(1)?請求參數(shù)
屬性 | 類型 | 默認值 | 必填 | 說明 |
access_token | string | 是 | 接口調(diào)用憑證 | |
jump_wxa | Object | 否 | 跳轉(zhuǎn)到的目標小程序信息。 | |
is_expire | boolean | false | 否 | 生成的 scheme 碼類型,到期失效:true,永久有效:false。 |
expire_time | number | 否 | 到期失效的 scheme 碼的失效時間,為 Unix 時間戳。生成的到期失效 scheme 碼在該時間前有效。最長有效期為1年。生成到期失效的scheme時必填。 |
(2)?jump_wxa 的結(jié)構(gòu)
屬性 | 類型 | 默認值 | 必填 | 說明 |
path | string | 是 | 通過 scheme 碼進入的小程序頁面路徑,必須是已經(jīng)發(fā)布的小程序存在的頁面,不可攜帶 query。path 為空時會跳轉(zhuǎn)小程序主頁。 | |
query | string | 是 | 通過 scheme 碼進入小程序時的 query,最大1024個字符,只支持數(shù)字,大小寫英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~ |
3、返回值
(1)?返回值說明
屬性 | 類型 | 說明 |
errcode | number | 錯誤碼 |
errmsg | string | 錯誤信息 |
openlink | string | 生成的小程序 scheme 碼 |
(2)?errcode合法值說明
值 | 說明 |
40002 | 暫無生成權(quán)限 |
40013 | 生成權(quán)限被封禁 |
85079 | 小程序未發(fā)布 |
40165 | 參數(shù)path填寫錯誤 |
40212 | 參數(shù)query填寫錯誤 |
85401 | 參數(shù)expire_time填寫錯誤,時間間隔大于1分鐘且小于1年 |
44990 | 生成Scheme頻率過快(超過100次/秒) |
85400 | 長期有效Scheme達到生成上限10萬 |
45009 | 單天生成Scheme數(shù)量超過上限50萬 |
4、示例:
(1)請求????????
{
"jump_wxa":
{
"path": "/pages/publishHomework/publishHomework",
"query": ""
},
"is_expire":true,
"expire_time":1606737600
}
(2)返回
{
"errcode": 0,
"errmsg": "ok",
"openlink": Scheme,
}
三、?云調(diào)用
1、接口方法
方法 | 說明 |
openapi.urlscheme.generate | 需在?config.json?中配置?urlscheme.generate?API 的權(quán)限,詳情請參考官方文檔 |
2、請求參數(shù)
(1)請求參數(shù)
屬性 | 類型 | 默認值 | 必填 | 說明 |
jumpWxa | Object | 否 | 跳轉(zhuǎn)到的目標小程序信息。 | |
isExpire | boolean | false | 否 | 生成的 scheme 碼類型,到期失效:true,永久有效:false。 |
expireTime | number | 否 | 到期失效的 scheme 碼的失效時間,為 Unix 時間戳。生成的到期失效 scheme 碼在該時間前有效。最長有效期為1年。生成到期失效的scheme時必填。 |
(2)jumpWxa 的結(jié)構(gòu)
屬性 | 類型 | 默認值 | 必填 | 說明 |
path | string | 是 | 通過 scheme 碼進入的小程序頁面路徑,必須是已經(jīng)發(fā)布的小程序存在的頁面,不可攜帶 query。path 為空時會跳轉(zhuǎn)小程序主頁。 | |
query | string | 是 | 通過 scheme 碼進入小程序時的 query,最大1024個字符,只支持數(shù)字,大小寫英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~ |
值 | 說明 |
40002 | 暫無生成權(quán)限 |
40013 | 生成權(quán)限被封禁 |
85079 | 小程序未發(fā)布 |
40165 | 參數(shù)path填寫錯誤 |
40212 | 參數(shù)query填寫錯誤 |
85401 | 參數(shù)expire_time填寫錯誤,時間間隔大于1分鐘且小于1年 |
44990 | 生成Scheme頻率過快(超過100次/秒) |
85400 | 長期有效Scheme達到生成上限10萬 |
45009 | 單天生成Scheme數(shù)量超過上限50萬 |
3、返回值
(1)返回值說明
屬性 | 類型 | 說明 |
errcode | number | 錯誤碼 |
errmsg | string | 錯誤信息 |
openlink | string | 生成的小程序 scheme 碼 |
(2)errcode合法值說明
值 | 說明 |
40002 | 暫無生成權(quán)限 |
40013 | 生成權(quán)限被封禁 |
85079 | 小程序未發(fā)布 |
40165 | 參數(shù)path填寫錯誤 |
40212 | 參數(shù)query填寫錯誤 |
85401 | 參數(shù)expire_time填寫錯誤,時間間隔大于1分鐘且小于1年 |
44990 | 生成Scheme頻率過快(超過100次/秒) |
85400 | 長期有效Scheme達到生成上限10萬 |
45009 | 單天生成Scheme數(shù)量超過上限50萬 |
4、示例
(1)請求
const cloud = require('wx-server-sdk')
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV,})
exports.main = async (event, context) => {
try {
const result = await cloud.openapi.urlscheme.generate({
"jumpWxa": {
"path": '/pages/publishHomework/publishHomework',
"query": ''
},
"isExpire": true,
"expireTime": 1606737600
})
return result
} catch (err) {
return err
}}
(2)返回
{
"errcode": 0,
"errmsg": "ok",
"openlink": Scheme,
}
四、?其他說明
如有其他問題請參考官方文檔:文章來源:http://www.zghlxwxcb.cn/news/detail-416733.html
urlscheme.generate | 微信開放文檔文章來源地址http://www.zghlxwxcb.cn/news/detail-416733.html
到了這里,關(guān)于H5頁面跳轉(zhuǎn)微信小程序的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!