企业微信集成流程.docx
《企业微信集成流程.docx》由会员分享,可在线阅读,更多相关《企业微信集成流程.docx(3页珍藏版)》请在冰豆网上搜索。
应用集成企业微信说明
集成流程
1.在应用页面展示微信二维码;
a)企业微信管理台创建应用(获取企业ID、应用ID、应用秘钥)
b)调用获取access_token接口(接口1)
c)引用企业微信wwLogin-1.0.0.js(附件1)在本地页面嵌入二维码(代码段1);
2.手机企业微信客户端扫描二维码并授权访问,页面跳转到redirect_url,应用端获取微信code;
3.应用端调用接口(接口2)查询微信用户信息;
4.应用端使用微信用户在本地查询是否有关联用户;
a)查询到用户,使用该用户作为当前登录用户,认证放行;
b)未查询到用户,弹框输入用户名+密码,将微信USERID和用户进行绑定,再使用该用户作为当前登录用户,认证放行;
附件1
说明:
在需要展示企业微信网页登录二维码的网站引入JS文件或者如下链接:
http:
//203.91.36.245/js/sso/wwLogin-1.0.0.js
在需要使用微信登录的地方实例以下JS对象
window.WwLogin({
"id":
"wx_reg",
"appid":
"",
"agentid":
"",
"redirect_uri":
"",
"state":
"",
"href":
"",
});
参数说明
参数
必须
说明
id
是
第三方页面显示二维码的容器id
appid
是
企业微信的cropID,在企业微信管理端->我的企业中查看
agentid
是
授权方的网页应用ID,在具体的网页应用中查看
redirect_uri
是
重定向地址,需要进行UrlEncode
state
否
用于保持请求和回调的状态,授权请求后原样带回给第三方。
该参数可用于防止csrf攻击(跨站请求伪造攻击),建议第三方带上该参数,可设置为简单的随机数加session进行校验
href
否
自定义样式链接,第三方可根据实际需求覆盖默认样式。
详见文档底部FAQ
接口1:
获取access_token
请求方式:
GET
请求URL:
http:
//203.91.36.245/cgi-bin/gettoken?
corpid=id&corpsecret=secrect
参数说明:
参数
必须
说明
corpid
是
企业ID
corpsecret
是
应用的凭证密钥
权限说明:
每个应用有独立的secret,所以每个应用的access_token应该分开来获取
返回结果:
{
"errcode":
0,
"errmsg":
"",
"access_token":
"accesstoken000001",
"expires_in":
7200
}
参数
说明
access_token
获取到的凭证,最长为512字节
expires_in
凭证的有效时间(秒
)
出错返回示例:
{
"errcode":
40091,
"errmsg":
"provider_secretisinvalid"
}
接口2:
通过code获取用户信息
请求方式:
GET
请求地址:
http:
//203.91.36.245/cgi-bin/user/getuserinfo?
access_token=ACCESS_TOKEN&code=CODE
参数说明:
参数
必须
说明
access_token
是
调用接口凭证
code
是
通过成员授权获取到的code,每次成员授权带上的code将不一样,code只能使用一次,5分钟未被使用自动过期
权限说明:
跳转的域名须完全匹配企业内任一应用的可信域名。
返回结果:
{
"UserId":
"USERID",
}
参数
说明
UserId
成员UserID
出错返回示例:
{
"errcode":
40029,
"errmsg":
"invalidcode"
}