javascript - 關(guān)于微信授權(quán)的問題。
問題描述
我現(xiàn)在有個列表頁面,當(dāng)列表頁面點擊商品進(jìn)入詳情頁后,開始做微信授權(quán),授權(quán)成功后重定向到當(dāng)前詳情頁。然后點擊微信的返回按鈕,返回的依舊是微信授權(quán)的官方頁面(如下圖所示)。然后又重定向到我的詳情頁,等于回不去列表頁了。請問有人能夠幫忙解答一下么?
問題解答
回答1:最近在做微信公眾號,也有微信授權(quán)的需求,不過,可能因為我這邊是在一級頁面,進(jìn)入以后直接授權(quán),所以沒有暴露出你這個問題。這里提出點個人的見解,肯定有不足,敬請指正:首先:微信的返回按鈕,跟其瀏覽器的history是直接相關(guān)的,在我這邊是在一級頁面進(jìn)入以后直接授權(quán),然后用戶再直接點擊返回的話,是要達(dá)到“關(guān)閉頁面,顯示主菜單”的效果,嘗試過幾個方法,包括:
“監(jiān)聽返回事件”
window.addEventListener('popstate', function(){ //監(jiān)聽到后執(zhí)行的代碼},false);
“授權(quán)登錄后,使用history內(nèi)置方法”
window.history.go(-1);或window.history.back
但是都出現(xiàn)了很多情況,或是在微信WEB開發(fā)者工具起作用,但移動端不行;或是當(dāng)時可以,過兩天又失效。解決:最后,還是用了h5的新特性
//替換(用null模擬刪除)url記錄,實現(xiàn)返回一級頁面 直接關(guān)閉window.history.replaceState(null, null, toUrl);
等于是在瀏覽器歷史把登錄的界面記錄置空。你可以試試這個,也許對你有用、、、、
回答2:其實在微信里面,一切按需授權(quán)的都是流氓的;體驗極差的。
相關(guān)文章:
1. 一個mysql聯(lián)表查詢的問題2. mysql - 一個表和多個表是多對多的關(guān)系,該怎么設(shè)計3. 運行python程序時出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯誤?4. html5 - iOS的webview加載出來的H5網(wǎng)頁,怎么修改html標(biāo)簽select的樣式字體?5. python如何不改動文件的情況下修改文件的 修改日期6. javascript - git clone 下來的項目 想在本地運行 npm run install 報錯7. java - 我現(xiàn)在一個servlet中有調(diào)用socket訪問,作為socket的客戶端,8. 主從備份 - 跪求mysql 高可用主從方案9. mysql主從 - 請教下mysql 主動-被動模式的雙主配置 和 主從配置在應(yīng)用上有什么區(qū)別?10. python 如何實現(xiàn)PHP替換圖片 鏈接
