微信公众平台可以通过接口获取用户的openid,但是获取用户信息的时候需要做一次跳转。
我在后台有一张用户表,用户如果关注了公众平台就将他的信息录入到数据库,包括openid。现在要做一个简单的系统,用户参加某些活动可以获得积分,积分可以兑换成金币,所以在页面中需要使用openid来标识每一个用户。
现在的问题是,活动有好几个页面,每个页面都需要用到openid,并且无法限定用户从哪个页面进入,想请问有没有办法将用户openid存储起来,在不同页面之间传递?
ps: session这种方式是不行的,微信浏览器对session的支持有问题,我抓包做过测试
微信对session的支持没有任何问题,session也不是存在微信上面的。真正有问题的是微信对cookie的支持,微信上面保存的所有cookie信息都是临时的,退出微信再重新打开就会导致cookie丢失,自然会导致session失效。
在一次会话内完全可以使用session保存用户的openID,如果是在多个域名之间跳转的话最好是在一个主域名的不同二级域名下,写cookie的时候设置好domain参数就可以;跨主域名的话会比较麻烦,一般也没有必要。