php教程|php手册
微信,公众,平台,开发,自定义,菜单,获取,OpenID,关键字,微信,公众,平台,自定义,菜单,OpenID,作者,方
php教程-php手册
关键字 微信公众平台 自定义菜单 OpenID
作者:方倍工作室
原文:/txw1958/p/weixin-menu-get-openid.html
linux源码在哪个目录下,vscode初次使用需要配置环境吗,ubuntu 内核位置,tomcat部署项目中文乱码,sqlite约束 性别,清溪有哪些网页设计公司,判断服务器图片是否存在,兼容ie8的时间轴插件,qt前端框架qss,爬虫果泥粉,php商品展示,seo关键词做排名,网站后台下载图片,网页版考勤源代码,58同城网站模板,htmlQQ登录页面,.net网站后台管理系统下载,winform 画图程序lzw
在这篇微信公众平台开发教学中,我们将介绍如何在自定义菜单中获得用户的OpenID。
版本控制 源码下载,ubuntu的字体太小,tomcat集群实现高并发,excel 爬虫技能,关掉php提示信息,登封一站式seo优化课程lzw
本篇开发教学的实质是微信自定义菜单及OAuth2.0授权的灵活运用。
人事系统源码下载,vscode电脑怎么安装,系统备份ubuntu,jee没有tomcat,sqlite视频用什么打开,汽车前端框架作用是什么,影评爬虫可视化源码,php csv行,丰泽seo公司,手机网站下拉加载,网页两边的广告源代码,校园网站模板下载lzw
本文分为以下四个部分:
A、拥有高级接口权限
拥有高级接口权限时,我们使用OAuth2.0授权的方式来获取。
OAuth2.0的详细设置方法,请参考 微信公众平台开发(71)OAuth2.0网页授权
在设置好授权回调页面域名之后,我们需要构造菜单,为了方便同时讲解下一小节,我们菜单构造如下
{ "button": [ { "type": "click", "name": "图文获取", "key": "图文" }, { "type": "view", "name": "授权获取", "url": "https://open./connect/oauth2/authorize?appid=wx0738856156f7323c&redirect_uri=/oauth2/&response_type=code&scope=snsapi_base&state=1#wechat_redirect" } ]}
这样将生成两个菜单如下
当点击 授权获取的时候,将访问授权页面,页面将使用OAuth2.0的方式获得openid。
代码可以参考《微信公众平台开发最佳实践》第72页。
跳转后显示如下:
B、没有高级接口权限
对于没有高级接口权限的账号,就不能使用view事件获得OpenID,需要使用click事件来实现
实现原理就是获得接收消息中的FromUserName值,并且在url中构造openid的参数即可
在自定义菜单中响应代码如下
1 private function receiveEvent($object) 2 { 3$content = ""; 4switch ($object->Event) 5{ 6 case "subscribe": 7 $content[] = array("Title"=>"欢迎关注方倍工作室", "Description"=>"", "PicUrl"=>"/weixin/weather/icon/cartoon.jpg", "Url" =>"/?u=txw1958"); 8 break; 9 case "CLICK":10 switch ($object->EventKey)11 {12 case "图文":13$content[] = array("Title"=>"OpenID", "Description"=>"你的OpenID为:".$object->FromUserName, "PicUrl"=>"", "Url" =>"/?u=txw1958&openid=".$object->FromUserName);14break;15 }16 break;17}18if(is_array($content)){19 $result = $this->transmitNews($object, $content);20}else{21 $result = $this->transmitText($object, $content);22}23return $result;24 }
运行后效果如下所示。
============================================
方倍工作室微信公众平台账号关注方法:
1. 微信通讯录-添加朋友-查找公众号-搜索“方倍工作室”
2. 微信通讯录-添加朋友-搜号码-输入“pondbaystudio”
3. 使用微信扫描下面的二维码