我正在尝试了解 oauth2 并比较服务器端和客户端流。对我来说,服务器端流程听起来更简单 - 用户授权一次,然后所有内容都保留在服务器上(将代码转换为访问 token 、向远程 API 发出请求等)。
那么,为什么有人想要使用客户端流程?
对此问题的一个可能的答案是减少服务器流量。有没有人有任何证据表明客户端减少了来自服务器的大量流量?
最佳答案
我认为批准和访问 token 授予不太可能构成服务器流量负载的任何重要部分,除非它以非常晦涩的方式实现。如果应用程序非常以 javascript 为中心,并且没有其他原因专门联系 Web 服务器来获取其服务,则可以使用客户端流。例如,您可以想象一些用 javascript 编写的浏览器扩展,它使用 OAuth 2 请求某人最喜欢的 YouTube 视频、Facebook 好友或其他一些数据,并以某种方式将其显示给用户。如果 Web 服务器不为应用程序执行任何其他功能,那么专用 Web 服务器来提供这些授权可能没有意义。
关于language-agnostic - oAuth 2 服务器端与客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11571849/