如何使用Orion在传出通知中添加自定义标头?

时间:2016-12-13 19:00:05

标签: https fiware fiware-orion custom-headers

我阅读了NGSIv2 specification中的“自定义通知”部分,我仍然对如何使其工作有疑问。

我是否必须将以下代码作为有效负载添加到我的订阅POST中?

"httpCustom": {
  "url": "http://foo.com/entity/${id}",
  "headers": {
    "Content-Type": "text/plain"
  },
  "method": "PUT",
  "qs": {
    "type": "${type}"
  },
  "payload": "The temperature is ${temperature} degrees"
}

对于具有身份验证/授权的订阅,如何使用httpCustom完成有效负载?

最后,如Rush所述,真的有必要使用Rush Relayer吗?在这种情况下,我们必须使用大约3年前更新的“第三方”软件。 Orion为什么不提供这个?我也很感激这方面的一些帮助。

1 个答案:

答案 0 :(得分:1)

可以使用以下httpCustom

"httpCustom": {
  "url": "http://example.com/some/path",
  "headers": {
    "X-Auth-Token": "n5u43SunZCGX0AbnD9e8R537eDslLM"
  }
}

令牌will expire from time to time。因此,应定期更新,使用新令牌修改httpCustom元素(使用PATCH /v2/subscriptions/<id>操作,有关详细信息,请参阅NGSIv2 specification。)

关于Rush,如果你能用一些等效的软件实现HTTP-to-HTTPS,则不是必需的。 Orion上的本机HTTPS通知已标识为a topic of interest,甚至在该行中还有pull request代码实现。目前它不是优先事项,但欢迎与此相关的贡献:)

编辑:以上httpCustom配置会让Orion发送包含X-Auth-Token标头的通知。因此,假设在url端点(例如上面示例中的http://example.com/some/path),能够处理X-Auth-Token标头的认证元素将被监听(通常是策略执行点 - PEP-代理)。

UPDATE:自版本1.7.0以来,Orion实现了本机HTTPS通知(即不需要Rush)。