微信开发获取openid中遇到的坑

从坑里走出来

微信后台设置授权回调页面域名 注意不要加http://

微信授权回调的url

1
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=http://test.ceshi.com&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect

要加http://redirect_uri=http://test.ceshi.com

正确:redirect_uri=http://test.ceshi.com
错误:redirect_uri=test.ceshi.com (这个在电脑端的微信客户端可以, 在手机端就不行,害我周六来改)

注意redirect_uri中的参数

如果你在微信端分享出去的链接像这样 http://test.ceshi.com?id=55

1
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=http://test.ceshi.com?id=55&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect

id=55会丢失的

我是这么解决的:
0、session中有openid的话就不用走下面了
1、把分享出去的http://test.ceshi.com?id=55放入session
2、redirect_uri=http://test.ceshi.com
3、微信回调回来之后再进行获取openid的操作
4、把openid存入session
5、从session中取出http://test.ceshi.com?id=55,这个url,再跳转回去

xpisme wechat
微信号