获取微信用户openid

附上开发文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html

开发之前,准备事项

  1. 一个已认证过的服务号|
  2. 基本信息配置
  3. js域名和网站授权域名配置
  4. 最后确认当前账号网页授权功能是否开通,没有开通的无法获取到用户授权
  5. 开发人员可能需要在"设置与开发-开发者工具-web开发者工具"里面帮顶一下开发者微信号

用户同意授权,获取code

1、准备好appid,就是上面第二步的appid,

2、还有微信授权完成之后的展示页面地址,这个地址要通过urlEncode 对链接进行处理,可以在这个网站进行转换UrlEncode编码/UrlDecode解码 - 站长工具

第一步微信开发者工具中打开下面链接

javascript 复制代码
//appid REDIRECT_URI 替换为自己的
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect

授权之后,会跳转到redirect_uri页面,同时,在redirect_uri链接后面会拼接上**?code=011mb2Sy1FSZS90KSsUy1Su9Sy1mb2SP&state=1** **(这里为举例)**里面的code就是我们需要的。

通过code换取网页授权access_token

javascript 复制代码
//这里的CODE就是第一步返回链接后拼接的CODE
//SECRET是公众号的appsecret
https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

在浏览器中输入上面的链接即可得到用户的openid等等信息。

上面开发的步骤总结为已下内容:

|----|------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|---|
| 步骤 | 参数 | 请求链接 | 返回参数 | |
| 1 | appid,redirect_uri 说明:redirect_uri为线上当前页面地址,地址要转码,线上转码地址:http://tool.chinaz.com/tools/urlencode.aspx | https://open.weixin.qq.com/connect/oauth2/authorize?appid=appid\&redirect_uri=redirect_uri\&response_type=code\&scope=snsapi_base\&state=STATE#wechat_redirect 说明:scope为snsapi_base不会调起授权的弹窗 | code |
| 2 | appid,code,secret | https://api.weixin.qq.com/sns/oauth2/access_token?appid=appid\&secret=secret\&code=code\&grant_type=authorization_code | openid |

相关推荐
阿砾2 天前
微信群消息处理:回调乱序、自己发的消息、群内真实发送者
微信
承渊政道2 天前
飞牛NAS部署Hermes AI Agent:接入DeepSeek、微信与公网访问完整教程
人工智能·微信·nas·deepseek·hermes
高晶3 天前
微信小程序实战:iOS 降级查询工具从零开发
微信·程序员
软擎4 天前
花店节日布置怎么留记录?用轻虾导出助手把花材替换、现场尺寸与撤场清点钉在一起
微信
jaysee-sjc4 天前
【苍穹外卖】Day12:工作台数据看板与 Excel 报表导出
java·开发语言·数据库·spring boot·spring·微信·excel
极客互动API5 天前
【极客互动】企业微信外部群聊机器人开发实战与效果验证
微信·机器人·企业微信·企微scrm·企业微信api·企微外部联系人
特视界说6 天前
多规格产品动画怎么规划?把“一个型号一条片”改成可管理的内容架构
人工智能·安全·微信·新浪微博
悟空码字7 天前
视频号直播变了
微信·视频号
随性而行3608 天前
企业微信 Webhook 接收不到消息?网络连通性、URL 签名验签与 API 返回错误码排查指南
java·网络·人工智能·后端·微信·企业微信
未秃头的程序猿9 天前
同一个商户号,V2 免密代扣和 V3 分账的证书怎么共存?
java·后端·微信