博主 [DTcode7] 带您 溺亖在知识的海洋里,嘿嘿嘿.~
🐒 个人主页—— DTcode7 的博客🐒《微信小程序相关博客》
《Vue相关博客》
《前端开发习惯与小技巧相关博客》
《AIGC相关博客》《photoshop相关博客》
😚 吾辈才疏学浅,摹写之作,恐有瑕疵。望诸君海涵赐教。望轻喷,嘤嘤嘤 🙈
🕍 愿斯文对汝有所裨益,纵其简陋未及渊博,亦足以略尽绵薄之力。倘若尚存阙漏,敬请不吝斧正,俾便精进!
一、公众号openId是什么?
公众号openId是用户在当前公众号下的唯一标识(‘身份证’),就是说通过这个openId,就能区分在这个公众号下具体是哪个用户。
微信公众号的OpenID是用户在每个公众号下的唯一标识。
OpenID的主要作用包括:
- 用户识别:OpenID可以帮助公众号识别不同的用户。当用户与公众号交互时,公众号可以通过用户的OpenID来辨识其身份。
- 信息存储:公众号可以将用户的OpenID进行存储,便于用户下次登录或使用时快速识别。
- 账号绑定:OpenID还可以用于将用户在第三方应用中的原有账号与微信公众号或小程序等应用进行绑定。
- 获取用户信息:开发者可以通过用户的OpenID来获取用户的基本信息,如昵称、头像等。
- 跨平台识别:如果开发者拥有多个移动应用、网站应用和公众帐号,可以通过用户的UnionID来区分用户的唯一性。同一用户对于同一个微信开放平台下的不同应用,UnionID是相同的。
需要注意的是,每个用户对于每个公众号的OpenID是唯一的,但对于不同的公众号,同一用户的OpenID是不同的。这意味着OpenID是与公众号绑定的,而不是全局唯一的。此外,在开发中请求的接口返回的一般都是OpenID,它是微信生态里最重要的一个ID之一。
二、我们在前端开发中用微信公众号openid做什么?
在前端开发中,微信公众号的OpenID主要用于用户身份识别和获取用户信息。
首先,OpenID是微信用户在每个公众号下的唯一标识符,可以看作是用户的“身份证”。在前端开发中,获取用户的OpenID是非常重要的一步,因为它允许开发者知道是哪个用户在进行操作。这通常通过微信网页授权流程实现,即OAuth2.0机制。在这个过程中,用户授权给公众号后,公众号可以获得一个网页授权特有的接口调用凭证(网页授权access_token),进而可以使用这个access_token来获取用户的基本信息,包括OpenID。
其次,为了在前端获取OpenID,通常需要用户的授权。前端可以通过微信提供的API发起授权页面,用户同意授权后,会返回一个授权临时票据(code)。然后,前端可以将这个code发送到后端,后端再通过使用AppID和AppSecret来换取网页授权access_token,最后通过这个access_token来获取用户的OpenID。
此外,在实际开发中,由于安全和隐私的考虑,前端自己设定的AppID和AppSecret无法通过审核,因此需要后端接口返回这些字段名,而实际的值则需要在微信公众号平台获取。需要注意的是,微信开发者工具的真机调试可以获取OpenID,但是预览模式可能无法获取到OpenID,这是开发者在测试时需要注意的问题。
OpenID在前端开发中的应用是多方面的,它不仅可以帮助开发者识别用户,还可以用于个性化服务的提供和用户行为的追踪。然而,获取OpenID的过程涉及到用户授权和前后端的协作,因此在开发过程中需要谨慎处理用户数据,确保遵守相关的隐私保护规定。
获取微信公众号用户的OpenId(用户关注公众号后,用户在公众号的唯一凭证),有两种方法
1)通过微信接口
1.1)获取网页授权code(分为静默授权,非静默授权(需用户确认))
1.2) 通过授权code获取用户信息(用户信息包含两种:1)只取OpenId,2)取用户相关头像、昵称。openId等)
也就是需要按照以下步骤操作:
- 登录微信公众平台后台:您需要登录到微信公众平台后台,这是获取OpenID的前提。
- 获取公众号的AppID:在公众平台后台,您需要找到并记录下您的公众号的AppID,这是调用相关接口的凭证。
- 设置回调地址:在公众平台后台的“开发”菜单下的“接口权限”中,设置您的网页服务的回调地址。这个地址是用户授权后微信服务器会将授权临时票据(code)发送到的地方。
- 用户授权:用户在微信客户端中访问网页时,页面将引导用户进行授权,授权后会跳转到回调地址,并且携带一个授权临时票据(code)。
- 通过API获取OpenID:使用步骤2中获取的AppID和步骤4中的授权临时票据(code),通过微信提供的API,您可以向微信服务器请求来获取用户的OpenID。
- 存储和使用OpenID:一旦获取到用户的OpenID,您可以将其存储在您的数据库中,并用于用户身份识别或其他业务逻辑。
此外,如果您想要关联用户在同一公司不同公众号下的数据,您还需要使用UnionID。UnionID机制允许您在不同的公众号、小程序、App之间识别同一用户。这通常需要在用户与公众号产生消息交互后,通过API获取用户的基本信息,其中包括UnionID。
但是,如果你不想写接口,那还有一种很简单的方式去获取:
2)通过公众号网页后台用户
这种方式只要是公众号管理员,登录后台就能去拿到关注者的openid,方便开发调试
2.1)首先登陆公众号
2.2)找到管理--> 用户信息
2.3)然后找到已关注用户列表
2.4)按下F12打开调试模式(或者鼠标右键-检查),选中某个用户
2.5)找到label下的value值,这就是用户的openId
以上就是如何在网页端直接获取查看公众号关注用户的openid的方式,可以方便开发人员去调试。