loopback.io rest 连接器 - 如何传递 oAuth 令牌

Sim*_*est 5 oauth strongloop loopbackjs

使用环回,我使用 REST 连接器创建了到现有 API 的连接,该连接运行良好。但是,我想传递来自客户端的 oAuth 令牌。

我可以通过ctx.req.headers.authorizationModel.beforeRemote方法中抓取来获取 oAuth 令牌,但似乎无法找到将它作为新标头传递给 REST 连接器的方法。

我尝试了几件事:

  1. 添加一个钩子 using Model.observe(但这似乎不会用 REST 连接器触发)。
  2. 使用带有授权字段的模板 - 但无法使其正常工作。

任何想法表示赞赏。

Bry*_*ark 3

使用下面的连接器,您应该能够将 OAuth 令牌传递到函数中(作为示例中的第一个参数)。这样的事情对你不起作用吗?

{
  connector: 'rest',
  debug: false,
  options: {
    "headers": {
      "accept": "application/json",
      "content-type": "application/json",
      "authorization": "{oauth}"
    },
    strictSSL: false,
  },
  operations: [
    {
      template: {
        "method": "GET",
        "url": "http://maps.googleapis.com/maps/api/geocode/{format=json}",
        "query": {
          "address": "{street},{city},{zipcode}",
          "sensor": "{sensor=false}"
        },
        "options": {
          "strictSSL": true,
          "useQuerystring": true
        },
        "responsePath": "$.results[0].geometry.location"
      },
      functions: {
        "geocode": ["oauth", "street", "city", "zipcode"]
      }
    }
  ]}
Run Code Online (Sandbox Code Playgroud)