基于微信小程序URL Link接口能力实现在H5页面打开小程序任意页面

2022-06-13 22:35 栏目:技术开发 查看(16599)

前几天我们在微构网络官网发布过名为《基于URL Scheme开放能力实现在H5页面打开小程序任意页面》的文章,其实这篇文章跟前面发的文章是类似的性质,都是为了实现在任意H5页面打开小程序任意页面。URL Link实际上还是基于URL Scheme来实现的,只是相当于微信小程序平台提供了一个官方的短网址生成平台(如:https://wxaurl.cn/xxxx)。

单天生成Scheme+URL Link数量上限是50万条。目前该功能仅对非个人小程序账号开放权限,也就是以个人身份注册的小程序不能使用该接口能力。通过测试发现,跟URL Scheme不太一样的一点就是,生成的URL Link链接支持不同用户多次打开,而URL Scheme仅限给一个用户打开。

跟URL Scheme一样,自 2022 年 4 月 11 日起,URL Link有效期最长 30 天,不再支持永久有效的URL Link、不再区分短期有效URL Link与长期有效URL Link。

请求地址

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

其中ACCESS_TOKEN就是通过getAccessToken获取的access_token(有效期为2个小时,可以缓存),也就是这样的信息:

57_ojAsr9tfw8gYoFuSN8XFeuHFGLOScdq75sZL4qVTnUF_YPxiJdJEPiPH1JB9NFxv3OsvTjTtcRf3aNMTl1BEAcZbBmPzCsuYoZYuXQtx8V11w68XtcuzRNC692aWZCXdIAj_8Zd1-N8ebMfo****ABAOFB

请求参数如下:

微信截图_20220613222537

需要注意的是,跟URL Scheme生成接口不一样,这个接口参数没有jump_wxa,而是直接传path、query、env_version等参数。主要参数举例如下(参考上述官方文档截图):

1、path:通过 scheme 码进入的小程序页面路径,必须是已经发布的小程序存在的页面,不可携带 query。path 为空时会跳转小程序主页(如/pages/index/index);

2、query:通过 scheme 码进入小程序时的 query(也就是小程序页面的参数),最大1024个字符,只支持数字,大小写英文以及部分特殊字符:`!#$&’()*+,/:;=?@-._~%“;

3、env_version:要打开的小程序版本。正式版为”release”,体验版为”trial”,开发版为”develop”,仅在微信外打开时生效。默认为“release”(也就是正式版)。

简单的服务端demo代码如下:

$jssdk = new \jssdk\Jssdk($this->config['appid'],$this->config['secret']);
$access_token= $jssdk->getAccessToken();
$url='https://api.weixin.qq.com/wxa/generate_urllink?access_token='.$access_token;
$params=[
 'path'=>'/pages/goods/view/view',
 'query'=>'goods_id=50' 
];
$res = $this->post($url, json_encode($params));
echo $res;

返回的信息如下:

微信截图_20220613223129

实际上查看wxaurl.cn页面的前端源码,最终还是使用URL Scheme进行跳转的,如下图:

微信截图_20220613223243

 

与我们的项目经理联系
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流

转载请注明出处:基于微信小程序URL Link接口能力实现在H5页面打开小程序任意页面 - 微构网络
分享: