智慧硬件开发 服务端API 身份验证 网页授权登录 构造网页授权链接
构造网页授权链接

目录

  • 构造第三方应用oauth2链接
  • 构造企业oauth2链接
  • scope的特殊情况
  • 构造第三方应用oauth2链接

    如果第三方应用需要在打开的网页里面携带用户的身份信息,第一步需要构造如下的链接来获取code:

    https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect

    参数说明:

    参数必须说明
    appid第三方应用id(即ww或wx开头的suite_id)。注意与企业的网页授权登录不同
    redirect_uri授权后重定向的回调链接地址,请使用urlencode对链接进行处理 ,注意域名需要设置为第三方应用的可信域名
    response_type返回类型,此时固定为:code
    scope应用授权作用域。
    snsapi_base:静默授权,可获取成员的基础信息(UserId与DeviceId);

    snsapi_privateinfo:手动授权,可获取成员的详细信息,包含头像、二维码等敏感信息。
    state重定向后会带上state参数,企业可以填写a-zA-Z0-9的参数值,长度不可超过128个字节
    #wechat_redirect固定内容

    企业员工点击后,页面将跳转至 redirect_uri?code=CODE&state=STATE,第三方应用可根据code参数获得企业员工的corpid与userid。code长度最大为512字节。

    权限说明:
    使用snsapi_privateinfo的scope时,第三方应用必须有“成员敏感信息授权”的权限。

    构造企业oauth2链接

    对于旧的套件应用,只能为每个授权企业构造不同的oauth2链接,以获取code参数:

    https://open.weixin.qq.com/connect/oauth2/authorize?appid=CORPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&agentid=AGENTID&state=STATE#wechat_redirect

    参数说明:

    参数必须说明
    appid企业的CorpID
    redirect_uri授权后重定向的回调链接地址,请使用urlencode对链接进行处理
    response_type返回类型,此时固定为:code
    scope应用授权作用域。
    snsapi_base:静默授权,可获取成员的的基础信息(UserId与DeviceId);
    snsapi_privateinfo:手动授权,可获取成员的详细信息,包含头像、二维码等敏感信息
    agentid企业应用的id。注意redirect_uri的域名必须与该应用的可信域名一致
    state重定向后会带上state参数,企业可以填写a-zA-Z0-9的参数值,长度不可超过128个字节
    #wechat_redirect终端使用此参数判断是否需要带上身份信息

    员工点击后,页面将跳转至 redirect_uri?code=CODE&state=STATE,企业可根据code参数获得员工的userid。code长度最大为512字节。

    scope的特殊情况

    • 当oauth2中appid=corpid时,scope为snsapi_userinfo或snsapi_privateinfo时,必须填agentid参数,否则系统会视为snsapi_base,不会返回敏感信息
    • 第三方服务商配置scope为snsapi_privateinfo时,agentid所对应的应用必须有“成员敏感信息授权”的权限。“成员敏感信息授权”的开启方法为:登录服务商管理后台->标准应用服务->本地应用->进入应用->点击基本信息栏“编辑”按钮->勾选"成员敏感信息"
    • 企业自建应用调用读取成员接口没有字段限制,可以获取包括敏感字段在内的所有信息。因此,只有第三方应用才有必要使用snsapi_userinfo或snsapi_privateinfo的scope。
    上一篇
    开始开发
    下一篇
    获取访问用户身份