微信开发自定义菜单获取OpenID
2016-06-29 11:26
543 查看
OpenID:
每个微信用户对于每个公众号,有一个唯一的OpenID。对于其它公众号,OpenID是不同的
用途:
通过 OpenID,能访问到用户的基本信息
跟后台应用(比如商品销售)配合,可以管理用户的订单等数据
获取方法
1. 任何用户与公众号的交互,都会带OpenID
比如,文本消息、订阅事件、菜单Click 事件
2. 菜单跳转到外部网页,不带OpenID,只能用网页 OAuth。refresh_token有效期为30天,当refresh_token失效之后,需要用户重新授权。
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842&token=&lang=zh_CN
用户可能会反感网页授权的过程,解决方法:
1. 在菜单CLICK之后,后台回复一条图文消息,里面URL可以带上OpenID
2. 提示用户:为保障您购物的安全和便利,请在打开的网页中授权,授权只会访问你的公开信息
每个微信用户对于每个公众号,有一个唯一的OpenID。对于其它公众号,OpenID是不同的
用途:
通过 OpenID,能访问到用户的基本信息
跟后台应用(比如商品销售)配合,可以管理用户的订单等数据
获取方法
1. 任何用户与公众号的交互,都会带OpenID
比如,文本消息、订阅事件、菜单Click 事件
<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[FromUser]]></FromUserName> # OpenID <CreateTime>123456789</CreateTime> <MsgType><![CDATA[event]]></MsgType> <Event><![CDATA[CLICK]]></Event> <EventKey><![CDATA[EVENTKEY]]></EventKey> </xml>
2. 菜单跳转到外部网页,不带OpenID,只能用网页 OAuth。refresh_token有效期为30天,当refresh_token失效之后,需要用户重新授权。
<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[FromUser]]></FromUserName> <CreateTime>123456789</CreateTime> <MsgType><![CDATA[event]]></MsgType> <Event><![CDATA[VIEW]]></Event> <EventKey><![CDATA[www.yourwebpage.com]]></EventKey> </xml>
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842&token=&lang=zh_CN
用户可能会反感网页授权的过程,解决方法:
1. 在菜单CLICK之后,后台回复一条图文消息,里面URL可以带上OpenID
case "Menu KEY": $content[] = array("Title"=>"OpenID", "Description"=>"你的OpenID为:".$object->FromUserName, "PicUrl"=>"", "Url" =>"http://your.web.page/?openid=".$object->FromUserName);
2. 提示用户:为保障您购物的安全和便利,请在打开的网页中授权,授权只会访问你的公开信息
相关文章推荐
- 社交巨头三国杀:微信、WhatsApp、Line到底有啥区别?
- 微信悄悄升级群聊功能:个人微信营销号的福音
- 突击部队拼多多
- 我是运营,我没有假期
- 如何做到日消息量100万的微信公众号?
- 论微信取消推送功能的可能性(原创)
- 微信的成功,靠的是QQ导流吗?
- 「Linux 中国」2018 微信文章排行榜
- 马化腾亲自“站台” 企业微信和个人微信互通能带来什么?
- 一个微信群的兴亡
- 微信服务号推送模板消息接口
- C#微信公众号与订阅号接口开发示例代码
- 我也有微信朋友圈了 Android实现
- Android学习项目之简易版微信为例(一)
- PHP限制页面只能在微信自带浏览器访问的代码
- 微信公众平台开发之认证"成为开发者".Net代码解析