首頁  >  問答  >  主體

angular.js - angular如何在公眾號開發中保持openid的狀態?

在使用微信公眾號中遇到個持久化openid的問題,目前專案中採用伺服器端取得openid後存在session中然後回到前端,在angular有個公用的base.js的檔案異步取得openid並寫入到localStorage中以便其它頁面調用。

現在的問題是第一次進入頁面獲取到openid後可以正常在頁面中使用,頁間跳轉也可以獲取到,但一旦從後台關閉微信再進入點擊公眾號菜單又會去獲取一次openid ,然後再重定向到redirect_url中定義的頁面,導致用戶無法正常的進入對應的選單,不知道是angular這邊獲取openid的方式不對還是伺服器端那邊的做法不對,望指教!

ringa_leeringa_lee2687 天前1293

全部回覆(2)我來回復

  • 滿天的星座

    滿天的星座2017-07-04 13:46:38

    這個問題描述的不太清楚。如果要取得openid,必須透過微信的網頁授權,先拿到授權code,然後拿openid。所以openid盡量緩存下來。

    回覆
    0
  • 怪我咯

    怪我咯2017-07-04 13:46:38

    按理說程式是運行在微信提供的瀏覽器中的,微信推出了,程式肯定也關閉了。在此進入的時候,又一次去服務端獲取,一切都是新的了。其實可以把openId保存在service中,沒必要保存在localstorage中。

    沒明白你說的什麼意思,你再整理下來。

    回覆
    0
  • 取消回覆