微擎模塊開發(fā)過程中慰技,為了提高用戶體驗椭盏,我們團隊都是使用VUE進行開發(fā),當(dāng)使用JSSDK分享惹盼、掃碼庸汗、支付時回調(diào)地址是最為頭疼的一件事情∈直ǎ回調(diào)地址微信會自動清楚 /#/ 的內(nèi)容蚯舱,永遠(yuǎn)都是來到VUE路由的首頁。這里有同學(xué)會說使用?history?路由模式掩蛤,當(dāng)前這是一種解決方法枉昏,不過是要建立在VUE獨立部署域名的情況下,這里討論是在微擎模塊下揍鸟,當(dāng)然適用于各種已有路由不能使用history?路由模式的情況兄裂。
兩種解決方案:
??? 使用NGINX正則轉(zhuǎn)發(fā):(別人買我的模塊不可能去配置NGINX不科學(xué))
??? 使用PHP轉(zhuǎn)發(fā) (建議使用)
模塊入口路由:
https://localhost/app/index.php?i=1&c=entry&do=index&m=app
(這個路由是直接渲染VUE模板)
https://localhost/app/index.php?i=1&c=entry&do=index&m=app/#/home
(VUE實際路由)
我們只需要在https://localhost/app/index.php?i=1&c=entry&do=index&m=app (index.inc.php)中加入以下代碼使用轉(zhuǎn)發(fā)句旱,在有回調(diào)的地方把回調(diào)URL寫成https://localhost/app/index.php?i=1&c=entry&do=index&m=app&vue_router_callback=home,就可以解決晰奖!
~~~
/** 解決fastadmin登錄回調(diào)谈撒、微信各種回調(diào)時清楚vue路由 */if($_GPC['vue_router_callback'])
{
? ? header('Location:https://localhost/app/index.php?i=1&c=entry&do=index&m=app/#/'.$_GPC['vue_router_callback']);
}
~~~