从H5跳转到小程序(获取小程序Scheme码)

        从H5跳转到小程序,可以获取小程序的Scheme码然后直接使用window.location.href跳转过去(跳转的小程序要在公众平台能查的到)。

// this.url为获取到的小程序码
window.location.href = this.url

        要获取小程序码首先要拿到 接口调用凭证 。

        接口调用凭证需要向对应的接口发起请求。请求为GET

https://api.weixin.qq.com/cgi-bin/token

        参数:

// 固定值
grant_type: 'client_credential',
// 小程序id
appid: '****************',
// 小程序秘钥 (开发管理/开发设置)
secret: '***************',

小程序id和小程序秘钥都需要在微信公众平台上获取。

 接口调用成功的话会在data里返回access_token,这是就是接口调用凭证。

拿到凭证还需要再调一次接口,才能得到小程序码,接口为POST。

https://api.weixin.qq.com/wxa/generatescheme?access_token=ACCESS_TOKEN

ACCESS_TOKEN为获取的接口调用凭证,需要直接把凭证拼接在url后面,放在参数里不行。

参数:

//生成的 scheme 码类型,到期失效:true,永久有效:false。永久有效的scheme码上限为10万个
is_expire: true,
//如果scheme是到期失效的话需要配置此项,timestamp为Unix时间戳,单位为秒,不是毫秒
expire_time: timestamp,
jump_wxa: {
    //path为需要跳转的小程序路径
    path: 'pages/index/index',
    //要打开的小程序版本。正式版为"release",体验版为"trial",开发版为"develop"。
    env_version: 'trial',
    //参数跳转过去携带的参数,最大1024个字符,只支持数字,大小写英文以及部分特殊字符
    query: 'merge=1&key=100000'
}

注意:env_version版本的设置仅在微信外打开生效,安卓浏览器并不支持直接访问小程序码,需要用h5作为中介,调试会比较麻烦。

然后是返回的errcode代表的意思

40002    暂无生成权限    
40013    生成权限被封禁    
85079    小程序未发布    
40165    参数path填写错误    
40212    参数query填写错误    
85401    参数expire_time填写错误,时间间隔大于1分钟且小于1年    
85402    参数env_version填写错误    
44990    生成Scheme频率过快(超过100次/秒)    
85400    长期有效Scheme达到生成上限10万    
45009    单天生成Scheme数量超过上限50万    

 

最后data里的openlink就是要的小程序码。

然后直接跳转

// this.url为获取到的小程序码
window.location.href = this.url
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值