Angular先后端分离项目如何企业微信网页认证

一、想要干什么
在最近的Angular+Sping boot的学习应用中,想要在企业微信获取企业微信用户的userid,完成网页认证。具体可参考企业微信网页认证api
二、企业微信网页认证原理
image.png
本身的理解
image.png
注意:这里的消费code的过程,必须由服务后台完成请求
三、遇到的坑
我在使用的过程当中,试图使用Angular在前端完成身份认证的过程,当时的流程图:
image.png
因为在微信开发中,微信内嵌的浏览器并无控制台让咱们打印日志,只知道发生了错误,但具体错误一无所知。试图经过alert方法,将错误的对象打印出来,但看不到错误对象的详细信息。
四、vConsole
可能腾讯早就收到微信开发者的投诉,没有控制台,微信开发出现错误,彻底靠猜测本身哪里出了问题,效率过低,因而悄悄的提供了vConsole给开发者调试代码。vConsole是一个虚拟的控制台。
使用方法:在页面的head中加入以下代码前端

<script src="http://wechatfe.github.io/vconsole/lib/vconsole.min.js"></script>
<script>
// 初始化 vConsole
var vConsole = new VConsole();
console.log('Hello world');
</script>

这样咱们的页面就会增长一个虚拟的控制台,console.log或其余调试方法都可以在虚拟控制台中展示。
image.png
image.png
五、结论
经过vConsole调试,获得了问题的关键:出现跨域错误,企业微信的API不容许跨域请求。也就是说消费code的过程当中,我使用angular发起get请求是不被容许的,反思以后得出正确的流程图。
image.png
补充更正:颁发code的工做其实是由微信或企业微信客户端完成的,并不是企业微信API。git

相关文章
相关标签/搜索