最近在做 企微 第三方应用的 H5 登录,下面把整个流程梳理下,分享给大家
- 首先 我们作为服务商的模式,需要构造第三方应用的授权链接
- https://work.weixin.qq.com/api/doc/90001/90143/91120 参考构造 第三方应用 链接构造,需要传 appid:第三方应用id
- 授权之后,拿到code,走我们的系统登录,这个时候,接口会根据code 告知我们 哪个企业授权的应用,
- 拿到解析后的 企业id ,以及我们自身应用的id 去初始化 js sdk
这里备注下:由于 我们开发中有更换过域名,当时初始化 js sdk的时候,一直报80001 错误,解决办法:
第三方应用修改应用内配置,这里修改可信域名 未上线的需要删除重新安装第三方应用,已上线的需要重新提交审核上线修改的配置才会生效
流程梳理如下:
代码如下:
//实现一个 拦截 url search 的参数方法
const getUrlSearchParams = key => {
const searUrlStr = window.location.search
const paramStr = searUrlStr.split('?')[1]
const searchParams = new URLSearchParams(paramStr)
const val = searchParams.get(key)
return val
}
//在页面初始化的时候,执行 getUrlSearchParams
mounted(){
const code = getUrlSearchParams('code')
if(code){
//执行登录逻辑
......
//执行初始化 js-sdk
.........
}else{
window.location.replace(AuthUrl)
}
}
授权成功后会回调一个第三方接口。这个接口用来创建用户。如果说因为某种原因导致创建失败如何处理呢?