微信公众平台获取openid跟微信开放平台 openid一样吗

版权所有 京ICP备号-2
迷上了代码!当前位置: > 微信网页获取openid
微信网页获取openid
网页获取用户网络状态(JS接口) 一、用户管理 1.分组管理对应公众平台模块: 创建...access_token=ACCESS_TOKEN OpenID url ,即原 (加密后的微信号,每个用户对每个...点击后会出现接口配置页面,用来绑定自己服务器上的程...接口获取到的消息格式: 这里先说下 XML 数据格式,...(微信用户的 OPENID,每个微信用户与每个公众 账号是...网页获取用户网络状态 推广支持 JS接口 生成带参数的二维码 隐藏微信中网页右上...关注者列表由一串OpenID(加密后的微信号,每个用户对每个公众号的 OpenID是唯一的...《微信公众平台入门到精通》Vol.17_计算机软件及应用...方法有两种,一是将 OPENID 作为登陆页面或者注册页面...(缓存变量名); 我在程序的开头加了获取 memcache ...微信营销 微信开发:获取关注者列表,用户的OpenID 刘岩 获取关注者列表 公众号可通过本接口来获取帐号的关注者列表,关注者列表由一串OpenID (加密后的微信号,每个...asp. net微信开发实战 29-微信公众平台开发(十二):网页授权获取用户基本信息_...刷新网页授权 access_token,避免过期 4.通过网页授权access_token和openid获取用户...网页授权获取用户基本信息 网页获取用户网络状态(JS接口) 2.11.2 获取用户基本...公众号可通过本接口来根据OpenID获取用户基本信息, 包括昵称、头像、性别、所在...通过使用微信 JS-SDK,网页开发者可借助微信高效地...获取“分享到朋友圈”按钮点击状态及自定义分享内容...bind_openid 字段 为 true 的卡券必须填写,非自...微信服务号与订阅号的区别_互联网_IT/计算机_专业资料...3. OAuth 2.0 网页授权 功能描述:通过网页授权接口...公众号可以根据加密后的用户 OpenID,获取用户基础信息...用户通过扫描二维码、 微信内打开商品页面购买等多种方式调起 微信支付模块完成...Appsecret JSAPI 接口中获取 openid,审核后在公众平台开启开发模式后可查看。 ...新闻 网页 贴吧 知道 音乐 图片 视频 地图 百科...微信公众号(获取用户基本信息)_互联网_IT/计算机_...再使用全局 ACCESS_TOKEN 获取 OpenID 的详细信息 ...公众号可获得关注者的 OpenID(加密后的微信号,每个用户对每个公众号的OpenID是 ...步步v赢 五、OAuth2.0 如果用户在微信中(Web微信除外)访问公众号的第三方网页...微信公众平台开发资源集锦
发表于 07:12|
作者夏梦竹
摘要:笔者从陶瑾的博文中整理一些与信公众平台开发方面的资源,以飨读者。2014年微信开发者大会将于8月23日在北京举行。组委会已经邀请到了陶瑾担任演讲嘉宾,更多精彩内容,欢迎来现场聆听,与讲师互动。
由CSDN和《程序员》杂志联合主办的&
&将于8月23日在北京举行。作为一线微信开发商云集、专注在开发实践方面的顶级技术活动,演讲话题极为丰富,涵盖了微信开发不同维度的多个层内容
,包括:企业服务号开发和高级应用、企业号开发、如何与业务系统对接、各种高级接口功能、智能客服与LBS、HTML5社交应用、微信支付、微信电商开发等多方面(查看
),帮助开发者更深层次地解答微信开发方面疑惑。
作为微信公众平台开发先行者之一,陶瑾曾先后担任软件测试、协议栈开发、高级软件自动化工程师职位,现为方倍工作室创始人,拥有2项移动通信相关的专利。在博客园撰写了上百篇并被广泛传播,是《微信公众平台开发最佳实践》的作者。 此前,笔者在《》这篇文章中分享了他的一些与微信支付相关的一些博文,很多网友大呼不过瘾,这次笔者将整理一些微信公众平台开发方面的资源,以飨读者。
由于同一公司下多个公众号之间需要用户帐号互通,微信开放平台提供了UnionID机制,来解决此问题。通过获取用户基本信息接口,开发者可通过OpenID来获取用户基本信息,而如果开发者拥有多个公众号,可使用以下办法通过UnionID机制来在多公众号之间进行用户帐号互通。
1. 将多个公众号绑定到同一个微信开放平台(open.)帐号下,即同一个Union下
2. 通过获取用户基本信息接口中的UnionID来区分用户的唯一性,不过需要注意的是:公众号只有在被绑定到微信开放平台帐号下后,才会获取UnionID。只要是同一个微信开放平台帐号下的公众号,用户的UnionID是唯一的。换句话说,
同一用户,对同一个微信开放平台帐号下的不同应用,UnionID是相同的。(
本文将介绍如何灵活的使用图文消息功能。被动回复消息中的图文消息,发送客服消息及高级群发消息接口的发送的图文消息与本文介绍的图文消息的各情况基本一致。主要内容分为四部分:图文消息的定义、图文消息的实现、图文消息的类型及图文消息的回复。(
通过用户发送的关键字判断的方式来判断功能,再调用回复相应的内容。当一个功能不匹配的时候,则进入下一个功能判断。(
如何使用微信JS接口关闭微信内置浏览器返回到微信聊天窗口界面?
微信的JS接口目前已公布了三种:右上角按钮/底部导航栏/用户网络状态,另外转发到朋友圈和分享到好友也可以使用JS接口来定义。而关闭微信浏览器可以使用
WeixinJSBridge.call('closeWindow');"在HTML中的调用演示如下:
&!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"&
&TITLE&微信JS&/TITLE&
&META content="text/ charset=utf-8" http-equiv=Content-Type&
&META name=viewport content="initial-scale=1, user-scalable=no"&
&input type="button" value="关闭本窗口" onclick="WeixinJSBridge.call('closeWindow');" /&
本文将介绍如何使用开发模式实现多客服系统。文章分为三个部分:回复多客服消息、触发多客服会话、其他说明(
)。在《》这篇文章中介绍了微信支付中如何标记客户投诉的处理状态。
本文介绍微信公众平台自定义菜单及高级接口的PHP SDK及使用方法。主要包括初始化对象、查看Access Token、创建二维码、获取关注者列表、获取用户信息、创建菜单、用户分组、上传下载多媒体、发送客服消息等功能。(
本文介绍如何使用接口实现微信公众平台群发功能。分为以下四个部分:准备群发内容、选择群发对象、执行群发及接收群发结果。由于群发对象的不同,执行群发也有不同的方式。群发对象可以是用户组,也可以是OpenID列表。用户组。获得用户分组,需要使用高级接口中的查询所有分组接口,获得相应的group_id,OpenID列表。OpenID列表,是使用高级接口中的获取关注者列表接口来实现的。()
目前,微信小店的货架支持开放给开发者使用,即开发者可以将自己的页面作为货架,通过JavaScript API来调起微信客户端原生的商品详情页。
1.开发者需要预先通过1.1中的增加商品API,预先上传商品,得到product_id后,才能在自己的页面通过JavaScript API来调起商品详情页
2.即使开发者将自己的页面作为货架,但由于商品存储仍在微信服务器,所以用户下单后,订单、库存管理等事务,开发者仍需要根据微信小店系列接口来完成。
具体JavaScript API调用示例代码如下:
function openProductView(){
if (typeof WeixinJSBridge == "undefined")
var pid = "pDF3iY_G88cM_d-wuImym3tkVfG5";//只需要传递
WeixinJSBridge.invoke('openProductViewWithPid',{
},function(res){
// 返回res.err_msg,取值
// open_product_view_with_id:ok 打开成功
alert(res.err_msg);
if (res.err_msg != "open_product_view_with_id:ok"){
WeixinJSBridge.invoke('openProductView',{
"productInfo":"{\"product_id\":\""+pid+"\",\"product_type\":0}"
},function(res){
alert(res.err_msg);
值得一提的是,由CSDN和《程序员》杂志联合主办的&将于8月23日在北京举行。组委会已经邀请到了陶瑾将作为我们的演讲嘉宾,他将给我们带来《如何玩转微信支付功能的原理和开发?》的主题分享。重点介绍微信支付接口配置及微信支付账号体系之间的作用,内容涵盖各大功能特性及接口(身份识别、支付功能、交易通知、订单查询、发货通知、告警通知、维权通知)等原理及与服务器的交互实现方式,着重介绍各项接口的签名算法过程。更多精彩内容,欢迎来现场聆听,与讲师互动,有搞不懂的疑问,欢迎参会者“抓住”讲师问个究竟。贴心提醒:8月6日之前并完成购票流程的同学,都将免费获赠微信开发技术图书一本以及全套讲师讲义。3人以上团购即可享受折扣价,机不可失!目前购票火爆,&。&关于更详细信息,请点击。关注,了解更多研发资讯,参与互动讨论;当然您可以向我们推荐更多有趣、有质量的文章。相关阅读:
推荐阅读相关主题:
CSDN官方微信
扫描二维码,向CSDN吐槽
微信号:CSDNnews
相关热门文章70761人阅读
微信开发(8)
作者同类文章X
常用方法(87)
作者同类文章X
技术日记(177)
作者同类文章X
在微信开发时候在做消息接口交互的时候需要使用带微信加密ID(OpenId),下面讲讲述2中类型方式获取微信OpenID,接收事件推送方式和网页授权获取用户基本信息方式获取。1、通过接收被动消息方式获取OpenId(接收事件推送方式),以下事件中都可以获取到OpenID用户在关注与取消关注公众号时,微信会把这个事件推送到开发者填写的URL。方便开发者给用户下发欢迎消息或者做帐号的解绑。微信服务器在五秒内收不到响应会断掉连接,并且重新发起请求,总共重试三次关于重试的消息排重,推荐使用FromUserName + CreateTime 排重。假如服务器无法保证在五秒内处理并回复,可以直接回复空串,微信服务器不会对此作任何处理,并且不会发起重试。推送XML数据包示例:&xml&
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[FromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[event]]&&/MsgType&
&Event&&![CDATA[subscribe]]&&/Event&
参数说明:参数描述ToUserName开发者微信号FromUserName发送方帐号(一个OpenID)CreateTime消息创建时间 (整型)MsgType消息类型,eventEvent事件类型,subscribe(订阅)、unsubscribe(取消订阅)用户扫描带场景值二维码时,可能推送以下两种事件:如果用户还未关注公众号,则用户可以关注公众号,关注后微信会将带场景值关注事件推送给开发者。如果用户已经关注公众号,则微信会将带场景值扫描事件推送给开发者。1. 用户未关注时,进行关注后的事件推送推送XML数据包示例:&xml&&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[FromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[event]]&&/MsgType&
&Event&&![CDATA[subscribe]]&&/Event&
&EventKey&&![CDATA[qrscene_123123]]&&/EventKey&
&Ticket&&![CDATA[TICKET]]&&/Ticket&
参数说明:参数描述ToUserName开发者微信号FromUserName发送方帐号(一个OpenID)CreateTime消息创建时间 (整型)MsgType消息类型,eventEvent事件类型,subscribeEventKey事件KEY值,qrscene_为前缀,后面为二维码的参数值Ticket二维码的ticket,可用来换取二维码图片2. 用户已关注时的事件推送推送XML数据包示例:&xml&
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[FromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[event]]&&/MsgType&
&Event&&![CDATA[SCAN]]&&/Event&
&EventKey&&![CDATA[SCENE_VALUE]]&&/EventKey&
&Ticket&&![CDATA[TICKET]]&&/Ticket&
参数说明:参数描述ToUserName开发者微信号FromUserName发送方帐号(一个OpenID)CreateTime消息创建时间 (整型)MsgType消息类型,eventEvent事件类型,SCANEventKey事件KEY值,是一个32位无符号整数,即创建二维码时的二维码scene_idTicket二维码的ticket,可用来换取二维码图片用户同意上报地理位置后,每次进入公众号会话时,都会在进入时上报地理位置,或在进入会话后每5秒上报一次地理位置,公众号可以在公众平台网站中修改以上设置。上报地理位置时,微信会将上报地理位置事件推送到开发者填写的URL。推送XML数据包示例:&xml&
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[fromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[event]]&&/MsgType&
&Event&&![CDATA[LOCATION]]&&/Event&
&Latitude&23.137466&/Latitude&
&Longitude&113.352425&/Longitude&
&Precision&119.385040&/Precision&
参数说明:参数描述ToUserName开发者微信号FromUserName发送方帐号(一个OpenID)CreateTime消息创建时间 (整型)MsgType消息类型,eventEvent事件类型,LOCATIONLatitude地理位置纬度Longitude地理位置经度Precision地理位置精度用户点击自定义菜单后,微信会把点击事件推送给开发者,请注意,点击菜单弹出子菜单,不会产生上报。推送XML数据包示例:&xml&
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[FromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[event]]&&/MsgType&
&Event&&![CDATA[CLICK]]&&/Event&
&EventKey&&![CDATA[EVENTKEY]]&&/EventKey&
参数说明:参数描述ToUserName开发者微信号FromUserName发送方帐号(一个OpenID)CreateTime消息创建时间 (整型)MsgType消息类型,eventEvent事件类型,CLICKEventKey事件KEY值,与自定义菜单接口中KEY值对应推送XML数据包示例:&xml&
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[FromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[event]]&&/MsgType&
&Event&&![CDATA[VIEW]]&&/Event&
&EventKey&&![CDATA[]]&&/EventKey&
参数说明:参数描述ToUserName开发者微信号FromUserName发送方帐号(一个OpenID)CreateTime消息创建时间 (整型)MsgType消息类型,eventEvent事件类型,VIEWEventKey事件KEY值,设置的跳转URL&以上信息摘自微信公众平台接收事件推送章节。2、通过第三方网页授权方式获取OpenID,采用第三方网页授权(OAuth2.0授权登录)如果用户在微信中(Web微信除外)访问公众号的第三方网页,公众号开发者可以通过此接口获取当前用户基本信息(包括昵称、性别、城市、国家)。利用用户信息,可以实现体验优化、用户来源统计、帐号绑定、用户身份鉴权等功能。请注意,“获取用户基本信息接口是在用户和公众号产生消息交互时,才能根据用户OpenID获取用户基本信息,而网页授权的方式获取用户基本信息,则无需消息交互,只是用户进入到公众号的网页,就可弹出请求用户授权的界面,用户授权后,就可获得其基本信息(此过程甚至不需要用户已经关注公众号。)”微信OAuth2.0授权登录让微信用户使用微信身份安全登录第三方应用或网站,在微信用户授权登录已接入微信OAuth2.0的第三方应用后,第三方可以获取到用户的接口调用凭证(access_token),通过access_token可以进行微信开放平台授权关系接口调用,从而可实现获取微信用户基本开放信息和帮助用户实现基础开放功能等。在微信公众号请求用户网页授权之前,开发者需要先到公众平台网站的我的服务页中配置授权回调域名。请注意,这里填写的域名不要加http://关于配置授权回调域名的说明:授权回调域名配置规范为全域名,比如需要网页授权的域名为:,配置以后此域名下面的页面 、
都可以进行OAuth2.0鉴权。但 、
无法进行OAuth2.0鉴权。
具体而言,网页授权流程分为四步:引导用户进入授权页面同意授权,获取code通过code换取网页授权access_token(与基础支持中的access_token不同)如果需要,开发者可以刷新网页授权access_token,避免过期通过网页授权access_token和openid获取用户基本信息目录[]在确保微信公众账号拥有授权作用域(scope参数)的权限的前提下(服务号获得高级接口后,默认带有scope参数中的snsapi_base和snsapi_userinfo),引导关注者打开如下页面:
若提示“该链接无法访问”,请检查参数是否填写错误,是否拥有scope参数对应的授权作用域权限。
参考链接(请在微信客户端中打开此链接体验)
Scope为snsapi_base
Scope为snsapi_userinfo
参数说明参数是否必须说明appid是公众号的唯一标识redirect_uri是授权后重定向的回调链接地址,请使用urlencode对链接进行处理response_type是返回类型,请填写codescope是应用授权作用域,snsapi_base (不弹出授权页面,直接跳转,只能获取用户openid),snsapi_userinfo (弹出授权页面,可通过openid拿到昵称、性别、所在地。并且,即使在未关注的情况下,只要用户授权,也能获取其信息)state否重定向后会带上state参数,开发者可以填写a-zA-Z0-9的参数值#wechat_redirect是无论直接打开还是做页面302重定向时候,必须带此参数下图为scope等于snsapi_userinfo时的授权页面:用户同意授权后如果用户同意授权,页面将跳转至 redirect_uri/?code=CODE&state=STATE。若用户禁止授权,则重定向后不会带上code参数,仅会带上state参数redirect_uri?state=STATEcode说明 :
code作为换取access_token的票据,每次用户授权带上的code将不一样,code只能使用一次,5分钟未被使用自动过期。
首先请注意,这里通过code换取的网页授权access_token,与基础支持中的access_token不同。公众号可通过下述接口来获取网页授权access_token。如果网页授权的作用域为snsapi_base,则本步骤中获取到网页授权access_token的同时,也获取到了openid,snsapi_base式的网页授权流程即到此为止。请求方法获取code后,请求以下链接获取access_token:
参数说明参数是否必须说明appid是公众号的唯一标识secret是公众号的appsecretcode是填写第一步获取的code参数grant_type是填写为authorization_code返回说明正确时返回的JSON数据包如下:{
&access_token&:&ACCESS_TOKEN&,
&expires_in&:7200,
&refresh_token&:&REFRESH_TOKEN&,
&openid&:&OPENID&,
&scope&:&SCOPE&
参数描述access_token网页授权接口调用凭证,注意:此access_token与基础支持的access_token不同expires_inaccess_token接口调用凭证超时时间,单位(秒)refresh_token用户刷新access_tokenopenid用户唯一标识,请注意,在未关注公众号时,用户访问公众号的网页,也会产生一个用户和公众号唯一的OpenIDscope用户授权的作用域,使用逗号(,)分隔错误时微信会返回JSON数据包如下(示例为Code无效错误):{&errcode&:40029,&errmsg&:&invalid code&}
由于access_token拥有较短的有效期,当access_token超时后,可以使用refresh_token进行刷新,refresh_token拥有较长的有效期(7天、30天、60天、90天),当refresh_token失效的后,需要用户重新授权。请求方法获取第二步的refresh_token后,请求以下链接获取access_token:
参数是否必须说明appid是公众号的唯一标识grant_type是填写为refresh_tokenrefresh_token是填写通过access_token获取到的refresh_token参数返回说明正确时返回的JSON数据包如下:{
&access_token&:&ACCESS_TOKEN&,
&expires_in&:7200,
&refresh_token&:&REFRESH_TOKEN&,
&openid&:&OPENID&,
&scope&:&SCOPE&
参数描述access_token网页授权接口调用凭证,注意:此access_token与基础支持的access_token不同expires_inaccess_token接口调用凭证超时时间,单位(秒)refresh_token用户刷新access_tokenopenid用户唯一标识scope用户授权的作用域,使用逗号(,)分隔错误时微信会返回JSON数据包如下(示例为Code无效错误):{&errcode&:40029,&errmsg&:&invalid code&}
如果网页授权作用域为snsapi_userinfo,则此时开发者可以通过access_token和openid拉取用户信息了。请求方法http:GET(请使用https协议)
参数说明参数描述access_token网页授权接口调用凭证,注意:此access_token与基础支持的access_token不同openid用户的唯一标识lang返回国家地区语言版本,zh_CN 简体,zh_TW 繁体,en 英语返回说明正确时返回的JSON数据包如下:{
&openid&:& OPENID&,
& nickname&: NICKNAME,
&sex&:&1&,
&province&:&PROVINCE&
&city&:&CITY&,
&country&:&COUNTRY&,
&headimgurl&:
&privilege&:[
&PRIVILEGE1&
&PRIVILEGE2&
参数描述openid用户的唯一标识nickname用户昵称sex用户的性别,值为1时是男性,值为2时是女性,值为0时是未知province用户个人资料填写的省份city普通用户个人资料填写的城市country国家,如中国为CNheadimgurl用户头像,最后一个数值代表正方形头像大小(有0、46、64、96、132数值可选,0代表640*640正方形头像),用户没有头像时该项为空privilege用户特权信息,json 数组,如微信沃卡用户为(chinaunicom)错误时微信会返回JSON数据包如下(示例为openid无效):{&errcode&:40003,&errmsg&:& invalid openid &}
请求方法http:GET(请使用https协议)
参数说明参数描述access_token网页授权接口调用凭证,注意:此access_token与基础支持的access_token不同openid用户的唯一标识返回说明正确的Json返回结果:{ &errcode&:0,&errmsg&:&ok&}
错误时的Json返回示例:{ &errcode&:40003,&errmsg&:&invalid openid&}&以上信息摘自微信公众平台网页授权获取用户基本信息章节。更多关注付义方技术博客:
本人新浪微博:
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:257508次
积分:4114
积分:4114
排名:第3889名
原创:205篇
转载:23篇
评论:62条
阅读:1587
阅读:124039
阅读:7061
(1)(1)(11)(12)(13)(17)(16)(10)(2)(7)(1)(14)(96)(16)(1)(1)(2)(2)(2)(1)(1)
扫一扫手机里面查看博客~~}

我要回帖

更多关于 微信公众获取openid 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信