H5(uniapp)跳转至小程序页面
当前场景:需要在H5页面点击跳转至微信小程序页面
主要参考方法:1、获取接口调用凭据 | 微信开放文档
2、获取scheme码 | 微信开放文档
需要解决的主要问题:
在对微信文档中的API接口进行调用的时候,不可避免的会出现跨域的问题,那么就需要在uniapp项目中对跨域进行处理,主要更改manifest.json下的h5进行配置:
"h5" : { ..... "devServer": { "proxy": {//配置代理服务器来解决跨域问题,uniapp不适用CORS方案和设置JSONP方案 "/api/": {//映射域名 "target": "https://api.weixin.qq.com", "pathRewrite": { "^/api": "" } } } }, .... }
这样跨域问题就解决了,在请求API时就不需要对请求头进行跨域处理了。
主要步骤:(简单示例)
export default { data(){ return{} }, onLoad() { this.getToken() }, methods:{ getToken(){ uni.request({ url: "/api/cgi-bin/token", method: 'GET', data: { "grant_type": "client_credential", "appid": "小程序唯一凭证,即 AppID", "secret": "小程序唯一凭证密钥,即 AppSecret" }, success: res => { console.log(res); this.getScheme(res.data. access_token) } }) }, getScheme(token){ uni.request({ url: `/api/wxa/generatescheme?access_token=${token}`, method: 'POST', data:{ "jump_wxa": { "path": "通过 scheme 码进入的小程序页面路径", "query": "通过 scheme 码进入小程序时的 query", "env_version": "默认值"release"。要打开的小程序版本" }, "is_expire":true, "expire_type":1, "expire_interval":1 } , success: res => { .... //这里获取到openlink的就是可跳转的路径地址,把它赋值给href即可 } }) }, } }
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理!
部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!