企业微信对接企业自建应用(小程序、h5登陆认证)

企业微信和自建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再次登录。

扫码免费用

源码支持二开

申请免费使用

在线咨询