angular如何在公众号开发中保持openid的状态?

在使用微信公众号中遇到个持久化openid的问题,目前项目中采用服务器端获取openid后存在session中然后返回到前端,在angular有个公用的base.js的文件异步获取openid并写入到localStorage中以便其它页面调用。

现在的问题是第一次进入页面获取到openid后可以正常在页面中使用,页面间跳转也可以获取到,但一旦从后台关闭微信再进入点击公众号菜单又会去获取一次openid,然后又重定向到redirect_url中定义的页面,导致用户无法正常的进入相应的菜单,不知道是angular这边获取openid的方式不对还是服务器端那边的做法不对,望指教!

阅读 1.7k
评论
    3 个回答
    • 295

    这个问题描述的不太清楚。如果要获取openid,必须通过微信的网页授权,先拿到授权code,然后拿openid。所以openid尽量缓存下来。