企业微信和自建h5应用程序与小程序对接
1.企业微信对接h5
? 网页授权登录链接
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_userinfo
:无声授权,可获取成员的详细信息,但不包括手机、邮箱;
snsapi_privateinfo
:手动授权可以获取成员的详细信息,包括手机和电子邮件注意事项:企业可以根据自建应用程序userid获取成员细节,无需使用snsapi_userinfo和snsapi_privateinfo两种scope。更多说明见scope
agentid无企业应用id。当scope是snsapi_userinfo或snsapi_privateinfo注意参数redirect_uri域名必须与应用程序的可信域名一致。
state否重定向后会带上state企业可以填写参数a-zA-Z0-9参数值不得超过128个字节
#wechat_redirect终端使用此参数来判断是否需要带来身份信息
员工点击后,页面将跳转redirect_uri?code=CODE&state=STATE,企业可根据code参数获得员工的userid。code最大长度为512字节。
获取access_token
获取access_token调用企业微信API界面的第一步相当于创建登录凭证和其他业务API所有接口都需要依赖access_token来鉴定权利调用者的身份。因此,在使用业务界面之前,开发者应该明确access_token的颁发来源,使用正确的access_token。
请求方式:GET(HTTPS)请求地址:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRECT
注:这里标注大写单词ID和SECRET,根据实际获取值更新需要更换的变量。其它接口也使用相同的标记,不再解释。
参数说明:
必须说明参数
corpid是企业ID,获取方式参考:术语说明:-corpid
corpsecret是应用的凭证密钥,获取方式参考:术语说明-secret
权限说明:每个应用程序都是独立的secret,所以每个应用access_token应该分开来获取返回结果:
{
??????? "errcode": 0,
??????? "errmsg": "ok",
??????? "access_token": "accesstoken000001",
??????? "expires_in": 7200
}
参数说明:
参数说明
errcode错误返回码表示0成功,非0表示调用失败
errmsg返回码提示语
access_token获得的凭证最长为512字节
expires_in凭证的有效时间(秒)
注意事项:
a.
开发者需要缓存access_token,调用后续接口(注:不能频繁调用gettoken接口,否则会被频率拦截)。access_token当失败或过期时,需要重新获得。
b.
access_token返回的有效期expires_in传达,正常情况下为7200秒(2小时),有效期内重复返回相同结果,过期后返回新结果access_token。因为企业微信的每个应用,access_token它们是独立的,所以缓存需要区分存储的应用程序。
c.
access_token至少保留512字节的存储空间。
d.
企业微信可能会出于运营需要,提前使access_token开发人员应实现故障access_token逻辑在失新获得的逻辑。
根据code获取成员信息
请求方式:GET(HTTPS)请求地址:https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=ACCESS_TOKEN&code=CODE
参数说明:
必须说明参数
access_token调用接口凭证
code通过成员授权获得code,最大字节为512。每个成员授权带code将不一样,code只能使用一次,5分钟内不会自动过期。
权限说明:
跳转域名必须完全匹配access_token50001错误将返回应用程序的可信域名。
2.企业微信对接自建小程序应用(非第三方小程序)
调用接口 wx.qy.login() 获取企业微信发放的临时登录凭证(code)
https://qyapi.weixin.qq.com/cgi-bin/miniprogram/jscode2session?access_token=ACCESS_TOKEN&js_code=CODE&grant_type=authorization_code
微信允许多企业关联同一个小程序,但企业在开发过程中需要特别注意。
调用小程序wx.qy.login之后,发送code使用开发者服务器到开发者服务器code调用jscode2session接口,因为这个小程序是多个企业关联的,不知道哪个企业的用户在这个时候登录。此时,本小程序的应用可以在任何企业中使用secret获取access_token,先调用jscode2session获得准确的corpid,再据此corpid再次登录。
扫码咨询与免费使用
申请免费使用