H5免鉴权跳转小程序常见问题解答

您所在的位置:网站首页 什么叫免翻床垫呢图片 H5免鉴权跳转小程序常见问题解答

H5免鉴权跳转小程序常见问题解答

2024-07-15 09:01| 来源: 网络整理| 查看: 265

看到很多开发者在H5免鉴权跳转小程序这处于懵逼状态!!!!

我下边解释一下什么叫免鉴权?????

下方是官方文档内对免鉴权跳转能力的解释

注意第二段话

静态网站网页在微信客户端打开时

也就相当于什么,相当于在微信中打开这个开放按钮时候才会免鉴权,此时是通过什么跳转的呢

没错是通过上边代码中 username="小程序原始账号 ID(gh_ 开头的)" path="要跳转到的页面路径" 此时根据这两个参数跳转的,此时和云函数半毛钱关系没得!!!!

此时相当于什么 相当与小程序内的

wx.navigateToMiniProgram(Object object)

此时你想说我就想单纯实现微信内H5的跳转,且想在路径传参怎么解决???

js获取静态网站url后的参数,原生js去替换username与path的值呀

let launchBtn = document.getElementById('launch-btn') launchBtn.setAttribute("path", "XXXXXXXXXX"); //HTML 属性 launchBtn.setAttribute("username", "XXXXXXXXXX"); //HTML 属性

在微信以外的渠道中都需要走云函数去请求拿到 openlink 或自建网站鉴权调用接口获取openlink

那些发帖想在小程序A云函数跳转B小程序的别想了不可以

在uniapp里腾讯云函数搞的也别想了,那边没有内置小程序的sdk,调用不动云函数的

乖乖去云开发里上传静态网站,并打开允许访问,云函数打开未登录允许调用

或者自建网站鉴权获取

下边发一条我自己开发的H5跳小程序链接,你们可以去测试

https://u.imvp.top/?s=jlqwyBFN ——本链接由微信小程序【链接工具】生成

看到这里有人问我,我这个链接后边的参数是干什么的?这个参数是控制跳转哪一篇文章的加密id。

在任何情况下访问网站我都会去解析真实对应的文章链接是什么?

微信内我会将真实链接拼接在wx-open-launch-weapp属性内

if(res.result.url){ launchBtn.setAttribute("path", `/pages/basics/web_view.html?url=${encodeURIComponent(res.result.url)}`); //HTML 属性 }

此时文章链接已经拼接在属性path上了。微信内点击也会跳转到指定位置,

非微信内我会拿到openlink 重定向Url唤醒微信,实现外链跳转。

云函数端代码同样采用了官方示例代码,增加了openlink 入库绑定对应文章链接与加密参数,免得多次生成浪费!

2021年1月26日补充

因为目前URL Scheme进入小程序仅可进入正式版本,无法进入测试版,自己在开发时候专门做了参数埋点,上次测试后才二次对接参数提版,为此我将参数格式说明一下

//小程序端首页onLoad onLoad(options) { if(options.s=='u'){ //openlink解析后的参数标志位 uni.navigateTo({ url:`/pages/basics/web_view?id=${options.id}` }) } }

//云函数端,生成openlink const result = await cloud.openapi.urlscheme.generate({ jumpWxa: { path: `/pages/index/index`, // 替换自己的url路径 query: id?'s=u&id='+id:'', // s=u 作为我自己的参数标志位 }, // 如果想不过期则置为 false,并可以存到数据库 isExpire: false, // 一分钟有效期 expireTime: parseInt(Date.now() / 1000 + 60), }) //存储跳转链接 saveOpenlink(id,result.openlink) return { ...result, //urlscheme返回的所有参数 主要使用result.openlink s:id, //加密文章ID url:articleData.data.url //文章链接 }

//html端 供小程序环境访问跳转使用 let launchBtn = document.getElementById('launch-btn') launchBtn.setAttribute("path", `/pages/basics/web_view.html?url=${encodeURIComponent(res.result.url)}`); //HTML 属性



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3