我正在为服务开发一个公共HTTP后端API.最重要的是,有一个用户登录的Web应用程序,应该使用后端API来满足用户请求. API支持OAuth2,Web应用程序是单页面应用程序,带有大量的
javascript.
我担心的是浏览器和Web应用程序应该如何与API通信.我发现了两种可能的方法.
浏览器直接使用API
当用户输入他的凭据进行登录时,Web应用程序会将其传递给API并获得OAuth access_token,该权限直接传递给浏览器并存储在某个cookie中.然后,API的每个请求都是通过JSONP直接从浏览器发出的.当用户注销时,Web应用程序会破坏会话.
浏览器与Web应用程序对话,该应用程序与API进行通信
当用户输入其凭据进行登录时,Web应用程序会将其传递给API并获得OAuth access_token.用户创建会话,access_token存储在会话中.当浏览器需要与API通信时,它会通过Web应用程序. Web应用程序在会话中使用访问令牌,调用API并将响应传递给浏览器.
两种方式都有性能和安全权衡的利弊.你怎么看?
PS:从我所看到的,twitter直接从浏览器使用它的公共API,但传递会话cookie进行身份验证.这意味着他们的API还支持cookie会话?
解决方法
原文地址:https://www.jb51.cc/html/225631.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。