后端使用 ThinkPHP+EasyWechat
前端使用 Vue
用户访问某个链接时候,由于访问页面格式为https://abc.com/#/page?312
所以后端获取不到#后边的内容
这样的话,需要微信授权时,无法再授权后跳转到授权前的页面
如:在公众号自定义菜单放这个链接时候,目标是某个页面,但最近未授权过的跳转的是首页。
在网上也有一些,解决方案,相对比较复杂。
昨天在路上时候突然想到一种,既然后端无法获取#后的,那我们可以把#后的内容赋值给一个参数route,这样在授权后,我只需要之后route的值就可以知道用户要访问那个页面了
在做什么跳转。
用户在微信端分享的时候,通过jssdk也设置为带route的链接即可。
访问地址为
https://www.abc.com/#/page?123
生成的地址为
https://www.abc.com/?route=page?123
后端:
<?
....
//授权代码
//判断是否带route
if (isset($_GET['route'])){
redirect('/#/'.$_GET['route'])->send();
return '';
}
前端不是我写的。。。我就不上代码了