昨天在测试号上用OAuth2.0网页授权方式静默获取用户openid,然后暂存在session中,最后连同注册表单信息一起填入数据库,以达到自动绑定的目的。
然而今天偶然发现订阅号无法开通网页授权接口!!!!!!欲哭无泪。。。
解决方案如下,虽然用户体验照比网页授权差一点,但总比日后让用户手动绑定体验好得多:
如果是view类型自定义菜单的话,修改为click类型。click事件中是包含fromUserName参数的,也就是用户的openid。那么就设置当用户点击该按钮时返回文字,在文字中添加超链接,并把fromUserName通过get方式作为参数添加到链接后面,示例如下:
String Url = "http://......(填写你的链接).....";
String text = "<a href=" + Url + "?openid=" + openid + "\">点此链接注册</a>";
注意转义字符 \
也可以回复图文消息,同样把fromUserName作为参数放到图文消息链接里