微信网页授权、关注、获取用户信息流程

微信用户关注公众号流程:

搜索公众号---->点击公众号显示关注页面---->点击关注---->进入公众号

                                                                 |

                                                                / \

                                                                /   \

                             不浏览不需要授权         点击任何菜单链接 ,都需要授权

具体而言,网页授权流程分为四步:

1、引导用户进入授权页面同意授权,获取code

          如果用户同意授权,页面将跳转至 redirect_uri/?code=CODE&state=STATE。

         code说明 : code作为换取access_token的票据,每次用户授权带上的code将不一样,code只 能使用一次,5分钟未被使用自动过期。

2、通过code换取网页授权access_token(与基础支持中的access_token不同)

         如果网页授权的作用域为snsapi_base,则本步骤中获取到网页授权access_token的同时,也获取到了openid,snsapi_base式的网页授权流程即到此为止。

3、如果需要,开发者可以刷新网页授权access_token,避免过期

4、通过网页授权access_token和openid获取用户基本信息(支持UnionID机制)

          如果网页授权作用域为snsapi_userinfo,则此时开发者可以通过access_token和openid拉取用户信息了。

5、两种scope的区别:

应用授权作用域不同:

静默授权:snsapi_base (不弹出授权页面,直接跳转,只能获取用户openid)

手动授权:snsapi_userinfo (弹出授权页面,可通过openid拿到昵称性别、所在地。并且,即使在未关注的情况下,只要用户授权,也能获取其信息)

必须验证是用户手动同意授权,才允许开发者通过openid拿到具体的用户信息,静默授权没有用户手动同意授权这一动作,所以只能拿到openid,不能通过openid进一步取用户详细信息。

你可能感兴趣的:(微信网页授权、关注、获取用户信息流程)