求教各位大哥,企业微信的oauth2的原理?

2024/12/25
提问

在自建企微小程序,oauth2是如何才能调起授权页面?

这是我构建的链接:https://open.weixin.qq.com/connect/oauth2/authorize?appid=ww9e03eadbd78e4124&redirect_uri=flybirdcz.com%3A3002%2Fapi%2Flogin%2Foauth2%2Fcallback&response_type=code&scope=snsapi_privateinfo&state=STATE&agentid=1000049#wechat_redirect

redirect_uri的地址到底是啥指向的是前端地址还是服务端的地址?

回答·3
2024/12/26
提问者认同了该回答
OAuth 2是一种授权框架。在企业微信中,其原理如下: 当企业内的第三方应用需要访问企业微信用户的数据时,首先要经过用户授权。用户通过企业微信客户端访问第三方应用,第三方应用会将用户导向企业微信的授权服务器。 企业微信授权服务器会要求用户登录(如果没登录的话),然后询问用户是否同意授权该第三方应用访问自己的数据,如基本信息、通讯录等。如果用户同意授权,授权服务器会给第三方应用返回一个授权码(authorization code)。 第三方应用再用这个授权码向企业微信的令牌端点(token endpoint)发送请求,换取访问令牌(access token)和刷新令牌(refresh token)。访问令牌就像是一把钥匙,能让第三方应用在令牌有效期内访问被授权的资源。当访问令牌快过期时,可以用刷新令牌来获取新的访问令牌,从而持续访问相关资源。
赞同 1
评论
2024/12/26
提问者认同了该回答

原理简述:

你的企业微信登录了,现在打开一个网页页面,网页上需要知道登录的用户身份。

怎么做呢?

首先企微为该用户生成一个一次性有效的code,并将code作为参数打开你的网页(https://xxx.com?code=xxxx),你的应用服务器用这个code就可以获取企微的用户身份信息了。



所以地址可以是前端页面地址,也可以是接口地址。


如果是个小程序,你可以不用oauth2,企微小程序可以获得用户信息,https://developer.work.weixin.qq.com/document/path/91506。

赞同 1
评论
2024/12/25
前端地址,我这边是前端,直接到后台,我理解的无法再定位到前端了
赞同
评论 3
2024/12/25
前端地址?我这边是自建小程序,那就是小程序的链接?是吗大哥
赞同
回复
2024/12/25
小程序也属于前端,原理上我个人理解:前端显示二维码,扫码后提交到企业微信,返回一个code到你前端,你拿到code去企业微信拿到人员信息,然后判断是否允许登录,基本是这么个流程
赞同
回复
回复 2024/12/25
请问哪一步,小程序会拉取授权页面?
赞同
回复
你还未登录,请先登录