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

相关推荐
七分小熊猫3 天前
解决ios页面跳转后调用微信js-sdk签名认证失败
vue.js·微信
鹏北海4 天前
Vue3+TS的H5项目实现微信分享卡片样式
前端·微信
陈思杰系统思考Jason4 天前
系统思考:短期利益与长期系统影响
百度·微信·微信公众平台·新浪微博·微信开放平台
悠米来了4 天前
微信个人api接口
微信·机器人
FE_C_P小麦7 天前
AI中国象棋双人游戏开发尝试:AI_Grok
前端·微信·微信小程序
沃野_juededa12 天前
uniapp 开发安卓app 微信授权获取昵称 头像登录
微信·uni-app
PyAIGCMaster12 天前
项目 react+taro 编写的微信 小程序,什么命令,可以减少console的显示
react.js·微信·taro
说私域12 天前
基于开源AI大模型与智能硬件的零售场景服务创新研究——以AI智能名片与S2B2C商城小程序源码融合为例
人工智能·微信·小程序·开源·零售·智能硬件
mon_star°20 天前
微信答题小程序支持latex公式显示解决方案
微信·小程序
陈思杰系统思考Jason21 天前
第五项修炼:打造学习型组织
百度·微信·微信公众平台·新浪微博·微信开放平台