【问题标题】:How do I use the access token in Loopback?如何在 Loopback 中使用访问令牌?
【发布时间】:2017-03-30 19:36:41
【问题描述】:

我正在尝试将 Loopback 用作移动后端。

我也在关注这个例子:http://docs.strongloop.com/display/public/LB/Introducing+the+Coffee+Shop+Reviews+app

在我的 iOS 设备上登录后,我会收到一个访问令牌。都好。 现在我想调用一个需要身份验证的端点。只需调用端点就会收到消息“需要验证”。

所以我尝试将访问令牌作为 {"access_token":"1241341234513..."} 附加到请求参数。但是,什么也没有发生。

让我感到困惑的是,在 Web 应用程序上,不需要直接发送访问令牌。如何在我的移动客户端上进行这项工作?

【问题讨论】:

  • 访问令牌必须作为授权标头发送。我的猜测是你的 angular.js 已经实现了 angular loopback 服务,它使用注入器自动为你做这件事。
  • 是的,就是这样。非常感谢您的快速回复。这对我来说不是显而易见的。认证这个东西我用过一段时间了,但是一直没有特别深入的了解过。

标签: node.js strongloop loopback


【解决方案1】:

演示中包含的 lb-services 服务会自动将令牌注入 api 请求的授权标头中,您必须对您的移动应用执行相同操作。

if (LoopBackAuth.accessTokenId) {
    config.headers[authHeader] = LoopBackAuth.accessTokenId;
} else if (config.__isGetCurrentUser__) {...

https://github.com/strongloop/loopback-getting-started-intermediate/blob/master/client/js/services/lb-services.js#L4266

【讨论】:

【解决方案2】:

您需要确保每次都在请求的标头中发送 access_token,或者您可以在 url 中将 access_token='value' 作为查询字符串发送。

【讨论】:

    猜你喜欢
    • 2019-12-16
    • 2019-11-13
    • 2017-08-03
    • 1970-01-01
    • 1970-01-01
    • 2018-03-13
    • 2019-09-27
    • 1970-01-01
    • 2021-02-16
    相关资源
    最近更新 更多