首页 文章

Orion CB需要Fiware-Service HTTP头

提问于
浏览
3

尝试连接到我的Orion CB,其中包含通过IoTAgentCPP / IDAS创建的实体 . 两者都是最新的Docker版本(okt 30 2015) . 使用FIGWAY Python脚本完成所有工作:创建IDAS服务,注册设备,发送观察,通过OCB查看实体创建和更改的属性 .

但是使用任何WireCloud Mashup小部件,例如向NSB发送NSGI请求的NGSI浏览器小部件,小部件仍然是空白的,因为OCB发回:

{
  "errorCode" : {
  "code" : "404",
  "reasonPhrase" : "No context element found"
 }
}

通过curl查询时也会收到此回复: curl my_remote_ocb_host:1026/v1/contextEntities -S --header 'Accept: application/json'

如果我将 Headers --header 'Fiware-Service: fiwareiot' (在创建物联网服务时指定了IDAS)添加到curl命令行,那么我会从OCB获得预期的响应 .

但是,WC中的Widgets和Operators无法添加 Fiware-Service HTTP-Header . 这是我通过实验室代理从WC收到的,使用协议捕获,在OCB主机上:

POST /v1/queryContext?limit=20&details=on&offset=0 HTTP/1.1
Host: <myhost>:1026
origin: https://mashup.lab.fiware.org
Cookie: ..
Content-Length: 45
via: 1.1 mashup.lab.fiware.org (Wirecloud-python-Proxy/1.1)
accept-language: en-US,en;q=0.8,de;q=0.6,fr;q=0.4,nl;q=0.2,it;q=0.2
accept-encoding: gzip, deflate
x-forwarded-host: <myhost>:1026
x-forwarded-for: ..
accept: application/json
user-agent: ..
connection: keep-alive
x-requested-with: XMLHttpRequest
referer: https://mashup.lab.fiware.org/justb4/GeonovumTemperature1
X-Auth-Token: ..
content-type: application/json

{"entities":[{"id":".*","isPattern":"true"}]}

Response: HTTP/1.1 200 OK
Content-Length: 94
Content-Type: application/json
Date: Sat, 31 Oct 2015 13:23:44 GMT

{
  "errorCode" : {
    "code" : "404",
    "reasonPhrase" : "No context element found"
  }
}

可能需要扩展WC Widgets / Operators的设置以允许Fiware-Service HTTP标头,还是有另一种方法可以使用当前的可能性来实现这一点?

1 回答

  • 3

    WireCloud支持在编写小部件和运算符时添加 FIWARE-Service 标头(有关详细信息,请参阅documentation) . 因此,可以通过更新FIWARE Lab中提供的基本小部件和操作符集来修复此问题,以支持 FIWARE-Service 标头 .

    我已经在NGSI Browser小部件的问题跟踪器中为您创建了一个ticket . 请为其他小部件/操作员创建这样的票证 .

    注意:如果打开组件的详细信息并单击问题跟踪器按钮,则可以转到组件的问题跟踪器:

相关问题