企业微信——二次验证,验证地址页面jsdk调用失败
开发需求:用户在二次验证页面扫码识别验证,二维码由PC端业务系统生成。
二次验证前提条件,用户已经导入或接口创建到企业微信后台了。
问题:用微信和企业微信APP,在二次验证页面调用jsdk两个客户端效果不一样;微信能成功,企业微信APP不成功
开启二次验证,配置验证URL地址
1、微信操作
在企业微信后台,找到邀请二维码,扫码关注
关注后企业小助手有身份验证消息
点击进入二次验证页面,此时jsdk的wxconfig配置成功,扫码调用正常
2、企业微信APP操作
2.1、登陆企业微信APP
选择企业,进入企业后自动跳到二次验证页面,此时jsdk不起作用,没有任何debug提示。蛋疼。。。。
2.2、从A企业切换到B企业
进入B企业后,提示invalid Corpid(如果签名错误这里的错误提示不是这个)
官网解释:
这里的报错是Corpid不正确,然后就猜想:也就是用户没有进到B企业微信中,但是jsdk使用了B企业的Corpid???,但是我是切换进到B企业的。搞不懂,于是就验证,
把二次验证关闭,使自己能够进入到B企业中,访问原来二次验证地址,结果可以了。(内心一万只草泥马。。。)
验证二:在A企业中访问B企业二次验证地址,错误信息invalid corpid
总结:微信和企业微信APP为何有此差异呢?
根据上述实验,可能原因:
通过微信扫码关注企业小助手,实际上页面已经识别当前企业了
通过企业微信进入,APP内置浏览器没有识别用户的企业。
最后只能让用户使用微信进入二次验证了