获取微信用户openid的三种方法#ACCESS_TOKEN

article/2025/9/30 6:11:05

本文介绍如何获得微信公众平台关注用户的基本信息,包括昵称、头像、性别、国家、省份、城市、语言。

在本文中,特别要注意的是有两个不同的Access Token,他们产生的方式不一样,一种是使用AppID和AppSecret获取的access_token,一种是OAuth2.0授权中产生的access_token,分别称为全局Access Token授权Access Token。

一、通过全局Access Token获取用户基本信息

1. 用户关注以及回复消息的时候,均可以获得用户的OpenID

<xml><ToUserName><![CDATA[gh_b629c48b653e]]></ToUserName><FromUserName><![CDATA[ollB4jv7LA3tydjviJp5V9qTU_kA]]></FromUserName><CreateTime>1372307736</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[subscribe]]></Event><EventKey><![CDATA[]]></EventKey>
</xml>
其中的FromUserName就是OpenID

2. 然后使用access_token接口,请求获得全局Access Token

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
3. 再使用全局ACCESS_TOKEN获取OpenID的详细信息

https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID
返回如下:

{"subscribe": 1,"openid": "ol9-ExGGSKSSLZ8zhtCkCmRXNdYg","nickname": "drt9527","sex": 1,"language": "zh_CN","city": "郑州","province": "河南","country": "中国","headimgurl": "http://wx.qlogo.cn/mmopen/JcDicrZBlREhnNXZRudod9PmibRkIs5K2f1tUQ7lFjC63pYHaXGxNDgMzjGDEuvzYZbFOqtUXaxSdoZG6iane5ko9H30krIbzGv/0","subscribe_time": 1489960805
}

二、通过OAuth2.0方式弹出授权页面获得用户基本信息

1. 首先配置回调域名



 2. 构造请求url如下:

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx8888888888888888&redirect_uri=http://credit.zzpmi.cn/oauth2.php&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect
页面URL中的
scope=snsapi_userinfo 表示应用授权作用域为请求用户信息
★ 如果使用别人的AppID和AppSecret,那么获得的OpenID是那个有高级接口权限的服务号的,这里可以通过消息回复,获取本公众账号下的OpenID,带入回调中,与另一个OpenID进行关联也可以使用开放平台的UnionID功能来得到用户在自己账号下的OpenID 
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx8888888888888888&redirect_uri=http://credit.zzpmi.cn/oauth2.php?userid=oc7tbuPA9BgUCLADib5nB3k2KWWg&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect
3. 回调页面得到链接如下,回调url中将包含参数code

http://credit.zzpmi.cn/oauth2.php?code=00b788e3b42043c8459a57a8d8ab5d9f&state=1
或者 http://credit.zzpmi.cn/oauth2.php?userid=oc7tbuPA9BgUCLADib5nB3k2KWWg&code=00b788e3b42043c8459a57a8d8ab5d9f&state=1

4. 再使用code换取oauth2的授权access_token

url如下:

https://api.weixin.qq.com/sns/oauth2/access_token?appid=wx8888888888888888&secret=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&code=00b788e3b42043c8459a57a8d8ab5d9f&grant_type=authorization_code
获得授权 Access Token:

{"access_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5AI1bw2uqN--2jXoBLIM5d6L9RImvm8Vg8cBAiLpWA8Vw","expires_in": 7200,"refresh_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5CZPAwZksiuz_6x_TfkLoXLU7kdKM2232WDXB3Msuzq1A","openid": "oLVPpjqs9BhvzwPj5A-vTYAX3GLc","scope": "snsapi_userinfo,"
}

5. 再使用授权Access Token获取用户信息

url如下:

https://api.weixin.qq.com/sns/userinfo?access_token=OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5AI1bw2uqN--2jXoBLIM5d6L9RImvm8Vg8cBAiLpWA8Vw&openid=oLVPpjqs9BhvzwPj5A-vTYAX3GLc
返回如下

{"openid": "oLVPpjqs9BhvzwPj5A-vTYAX3GLc","nickname": "drt9527","sex": 1,"language": "zh_CN","city": "郑州","province": "河南","country": "中国","headimgurl": "http://wx.qlogo.cn/mmopen/utpKYf69VAbCRDRlbUsPsdQN38DoibCkrU6SAMCSNx558eTaLVM8PyM6jlEGzOrH67hyZibIZPXu4BK1XNWzSXB3Cs4qpBBg18/0","privilege": []
}

三、通过OAuth2.0方式不弹出授权页面获得用户基本信息

1. 配置回调域名



2. 构造请求url如下:

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx8888888888888888&redirect_uri=http://credit.zzpmi.cn/oauth2.php&response_type=code&scope=snsapi_base&state=1#wechat_redirect
页面URL中的

scope=snsapi_base 表示应用授权作用域为 不弹出授权页面,直接跳转,只获取用户openid
3. 返回回调页面如下

http://credit.zzpmi.cn?code=02a9bed29b2185a9f0ed3a48fe56e700&state=1

这里获得到了code

4. 再使用code获取OpenID

url如下:

https://api.weixin.qq.com/sns/oauth2/access_token?appid=wx8888888888888888&secret=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&code=02a9bed29b2185a9f0ed3a48fe56e700&grant_type=authorization_code
{"access_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-oJ9VmO-0Z-_izfnSAX_s0aqDsYkW4s8W5dLZ4iyNj5Y6vey3dgDtFki5C8r6D0E6mSVxxtb8BjLMhb-mCyT_Yg","expires_in": 7200,"refresh_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-oJ9VmO-0Z-_izfnSAX_s0aqDsYkW4s8W5dLZ4iyNj5YBkF0ZUH1Ew8Iqea6x_itq13sYDqP1D7ieaDy9u2AHHw","openid": "oLVPpjqs9BhvzwPj5A-vTYAX3GLc","scope": "snsapi_base"
}
5. 然后获取全局Access Token【以下与方法一中相同】

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$appsecret
返回结果:

{"access_token": "NU7Kr6v9L9TQaqm5NE3OTPctTZx797Wxw4Snd2WL2HHBqLCiXlDVOw2l-Se0I-WmOLLniAYLAwzhbYhXNjbLc_KAA092cxkmpj5FpuqNO0IL7bB0Exz5s5qC9Umypy-rz2y441W9qgfnmNtIZWSjSQ","expires_in": 7200
}
6. 再使用全局ACCESS_TOKEN获取OpenID的详细信息

https://api.weixin.qq.com/cgi-bin/user/info?access_token=".$ACCESS_TOKEN."&openid=".$openid."&lang=zh_CN
{"subscribe": 1,"openid": "oLVPpjqs2BhvzwPj5A-vTYAX4GLc","nickname": "drt9527","sex": 1,"language": "zh_CN","city": "郑州","province": "河南","country": "中国","headimgurl": "http://wx.qlogo.cn/mmopen/JcDicrZBlREhnNXZRudod9PmibRkIs5K2f1tUQ7lFjC63pYHaXGxNDgMzjGDEuvzYZbFOqtUXaxSdoZG6iane5ko9H30krIbzGv/0","subscribe_time": 1386160805
}

成功获得用户基本信息。

这种适合已经有OAuth2.0网页授权的服务号在网页中使用,且不会弹出“微信登录”页面。减少给用户的打扰。


注:本文内容参考方倍工作室相关信息。


















 



http://chatgpt.dhexx.cn/article/av6P4qiX.shtml

相关文章

web元件库/axure元件库/常用web组件/常用表单/导航栏/边框/图标/日期时间选择器/评分组件/穿梭框/输入框/步骤条/

web元件库/axure元件库/常用web组件/常用表单/导航栏/边框/图标/日期时间选择器/评分组件/穿梭框/输入框/步骤条/ Axure原型演示及下载地址&#xff1a; Untitled Documenthttps://66uc7t.axshare.com axure元件库 axure元件库 axure 元件库 axure 元件库 axure 元件库 axur…

axure元件制作-常用开关

利用axure制作APP端常用图标-开关元件&#xff0c;并添加至元件库 步骤&#xff1a; 1、从iconfont 图标库中选中关闭按钮元件&#xff0c;复制至“axure”中&#xff0c;选中该“关闭按钮”元件&#xff0c;设置“交互样式-选中”&#xff0c;导入代表开启状态的元件图片&am…

Axure 自定义元件库

点击文件 -> 新建元件库 可以添加多个元件&#xff0c;并将期重命名 保存元件库 新建页面 添加元件&#xff0c;选择自建的元件库 导入后就会发现我的原件库 这样就可以使用我们自定义的元件库了

Axure9 导入元件库

将需要加载的元件库(*.rplib)放到Axure的安装目录DefaultSettings\Libraries下&#xff0c;重启Axure9即可。

Axure移动端通用元件库rplib格式包含安卓、苹果各种主流手机、平板线框图元件库、IOS系统图标、人物图标、导航和分页、表格元素、各种小图标、移动元件库、axure元件库、axure原型

Axure移动端通用元件库rplib格式包含安卓、苹果各种主流手机、平板线框图元件库、IOS系统图标、人物图标、导航和分页、表格元素、各种小图标等 移动端通用元件库、app通用元件库、数据展示、操作反馈、通用模板、数据录入、列表页、表单页、详情页、通用版布局、移动端手机模…

Axure添加官方元件库

前言 工作需要&#xff0c;领导非要说某些东西产品经理搞不定&#xff0c;要我来搞… 于是就拿起了Axure 我的版本号&#xff1a; 添加一些自己喜欢的、常用元件库 1. 下载元件库 通过Axure工具&#xff0c;跳转到官方网站&#xff0c;下载自己心仪的元件库 比如我这里下…

Axure导入元件库和使用

下载元件库 vant 元件库下载: Vant - Mobile UI Components built on Vue element UI 元件库下载:https://element.eleme.cn/#/zh-CN/resource 以vant示例&#xff0c;下载完成后解压 我们看到有.rp和.rplib格式的文件 rp文件可以理解为一个别人设计好的原型作品。 rplib是原…

Axure 9元件使用

1 元件的位置操作 直接单击选择某一个元件将其拖至画布(中间区域)中,也可以通过左上角的插入菜单选择其他形状的部件。 元件的移动&#xff1a;拖住元件并在画布上松开鼠标即可&#xff1b;也可以直接在X和Y中直接输入坐标。 1.1 同时定位多个元件 按住CTRL使用鼠标单击每个元…

WEB端后台常用Axure元件库及框架模版

原型预览链接 https://www.pmdaniu.com/storages/124048/3256710583c699e3cd26bed1dfb3aa19-105941/start.html#g1&p%E4%BD%9C%E5%93%81%E6%BC%94%E7%A4%BA 软件版本&#xff1a;Axure 8/9 当前版本&#xff1a;V1.0 作品类型&#xff1a;元件库 作品格式&…

axure不显示元件库

1.系统元件库重新load 2。找到软件安装位置&#xff0c; E:\Axure RP 8\DefaultSettings\Libraries的文件&#xff1a; 元件库点击载入即可

整理了一些已分类的产品Axure元件库,助力正在找Axure组件库的同学高速成长

在我加入的一些高质量产品交流群和一些高质量交互设计交流群里经常有同学在问&#xff0c;“有没有全一点的Axure元件库呀&#xff1f;”、“大家有没有Web端元件库呀&#xff1f;”、“有没有微信小程序元件库呀&#xff1f;”等等这些问题。 重复的问题实在是太多太多了&…

Axure 元件 模板 MES系统 全套(带下载地址)

下载地址连接地址 https://download.csdn.net/download/ybitts/85141310

Axure 元件跟随鼠标拖动-仿手机APP手指拖动

上图 主要利用动态面板的拖动事件&#xff0c;让小圆球跟随移动&#xff0c;设置好边界&#xff0c;不要移动出去就可以了。

Axure元件库web组件库典藏版 (含五大类159小类组件 )

作品说明 作品页数&#xff1a;共159页 文件大小&#xff1a;11.0MB 兼容软件&#xff1a;Axure RP 8/9/10 应用领域&#xff1a;web端原型设计、桌面端原型设计 作品特色 该AxureRP web元件库&#xff0c;支持Axure RP 8/910。含5大类、159小类&#xff0c;主要包括导航…

【Axure元件库】彩色圆形图标库 810+个矢量扁平化图标

作品说明 图标数量&#xff1a;共810个 文件大小&#xff1a;6.77MB 兼容软件&#xff1a;Axure RP 8/9/10 图标说明 本图标库为多彩扁平圆形图标元件库&#xff0c;以彩色镂空设计为主&#xff0c;适用于设置项、菜单栏、导航栏等模块的原型设计&#xff0c;可应用于休闲…

Axure自定义元件

Axure自定义元件及元件库 前言一、创建元件库及元件1、新建页面&#xff08;作为元件库&#xff09;2、在页面中编辑内容&#xff08;创建元件&#xff09;3、根据需求给元件绑定相关事件4、给元件库命名5、保存元件库 二、导入元件库1、将我们创建的元件库导入软件中2、添加元…

Axure元件库:ElementUI元件、蚂蚁金服元件

2022年12月31日更新 ant design 已更新到5.x版本&#xff0c;目前官网还没提供 axure的元件库&#xff0c;下文的入口官网已取消&#xff0c;资源可关注我的微信公众号&#xff0c;输入&#xff1a;axure&#xff0c;获取以下元件库&#xff0c;免费&#xff0c;祝设计愉快&am…

axure导入的元件库不见了_Axure教程丨制作自己的Axure元件库

接触Axure有一点时间了&#xff0c;每次进行原型设计都需要载入好多个元件库或打开之前做的原型复制元件&#xff0c;不仅浪费时间而且缺少规律&#xff0c;所以决定整理一个自己常用的Axure元件库&#xff0c;以便之后做原型设计时可以快速调取。看了几篇教程感觉讲的有些乱&a…

Axure 元件属性

一、属性 1.不同的元件都有其独立的属性&#xff0c;可对相关属性进行设置。 以文本框为例&#xff1a; 其他类型的元件&#xff0c;在此处元件属性大同小异。 二、元件样式 页面可以添加样式&#xff0c;而元件可以添加更多丰富的样式。 1、元件名称&#xff1a;可以为元件…

Axure 元件库分享

常用基础元件、空间、表单&#xff0c;以及系统模板分享。 下载方式&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1-npcd5B9bihSzCxjdJXfpw?pwdem1w 提取码&#xff1a;em1w