Dan*_*nze 37 javascript node.js angularjs
仅使用本地身份验证策略为客户端应用程序提供安全API.
 红色箭头是知识差距的一部分.

也就是说--- client.example.com正在一个POST到api.example.com/login成功在那里client.example.com可以得到一个访问GET般的服务api.example.com/secret.
使用位于API前面的混合授权类型实现OAuth 2.0.
混合动力?
它不会是一个Implicit Grant Flowaka Client-Side Web Applications Flow因为没有重定向到API服务器也授予访问令牌.(即)"某某访问您的数据是否可以?"
它不会是Resource Owner Password Flow因为客户端ID和客户端密钥与请求一起传递,因此假定客户端应用程序是服务器端.
好的......那么两者兼而有之呢?
如果我们在客户端应用程序的页面加载上使用CRSF令牌,并使用用户凭据将其POST,OAuth 2.0身份验证端点以交换访问令牌,该怎么办?成功登录后,您将使用访问令牌和CRSF令牌对每个后续请求进行身份验证.
我发现一个好的Node.js OAuth 2.0库:
https://github.com/ammmir/node-oauth2-provider
我找不到解决这个问题的认证措施的工作示例!指出我正确的方向?
最终,这里的目标是使用CORS和本地策略(即用户名和密码)验证客户端应用程序到REST api,即使上面的约定是不可能的.
这是一个客户端应用程序,所以让我们保持时尚.
我正在寻找一个使用上面的Node.js OAuth 2.0种子用于API/Auth服务器以及像Angular.js或Backbone.js这样的前端框架来发出请求的工作示例.
该示例应与上述上下文匹配.
我不能保证我有时间编写工作示例,但我可以向您展示两条路径:)
最重要的是 CORS。解决这个问题后,使用$http服务就很容易了。因此,首先也是最简单的可能是在指向 api.x.com 的 x.com Web 服务器中配置反向代理。我在这里写了文章
第二种方法更好,并且正是为此目的而创建的,用于授权特定域使用您的资源。它涉及 api.x.com 中的一些编码,因此您无需更改其他域中提供的新 Web 应用程序中的任何内容。您只需在 api.x.com 服务中授权 CORS 请求即可。
Access-Control-Allow-Origin: x.com请求来自 x.com 时添加响应(换句话说,检查请求标头引用值是否匹配)上表中的任何值并将该值放入 Access-Control-Allow-Origin 响应标头中)。这就是全部:)之后,如果您知道如何使用$http或jQuey.ajax,您将能够在短短几分钟内从任何授权域 POST/PUT/DELETE/... 向 api.x.com 发出任何请求。