获取微信用户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 |

相关推荐
JHC0000001 天前
发现个微信客户端的bug
微信·bug
找不到对象就NEW一个2 天前
wechatapi,微信二次开发-连载篇(二)通讯录模块
后端·微信
FeiHuo565152 天前
微信个人号开发中如何高效实现API二次开发
java·开发语言·python·微信
Gerardisite4 天前
如何在微信个人号开发中有效管理API接口?
java·开发语言·python·微信·php
winfredzhang10 天前
用 Python + wxPython 打造一个万能网页图片一键下载神器(附完整源码 + 详细解析)
python·微信·pdf·遍历·图片·网页·保存
旭日跑马踏云飞11 天前
一文搞定腾讯开发生态-微信上传图片和视频
微信·serverless
llq_35011 天前
如何用 GitHub Pages 完成企业微信的域名归属认证?(适合没有服务器的开发者)
微信
今天也在研究公众号12 天前
Apple同款SVG,怎么写出来?手写+编辑器,两张方法都能搞定!
微信
开发加微信:hedian11613 天前
短剧小程序开发全攻略:技术选型与实现思路
微信·小程序·架构·aigc·交互