我有一个托管的http服务,该服务接受趋势数据并返回一些输出。可以使用siddhi查询语言访问此服务,如下所示:
@sink(type='http-request', sink.id='trends',
publisher.url='${SERVICE_URL}', @map(type='json', @payload(""" {"trend":{{trendArray}} } """) ) )
define stream Request(item string, trendArray string);
@source(type='http-response' , sink.id='trends', http.status.code='200',
@map(type='json', @attributes(stock = '<HOW_TO_GET_THIS_VALUE>', output = "<HOW_TO_GET_THIS_VALUE>")
) )
define stream Response(item string, output string);
http请求(和响应)有效负载不包含项目名称。
- 当回复到来时,我们想分配用来对输出进行评分的商品名称-上面标记为HOW_TO_GET_THIS_VALUE。 如何在siddhi查询中完成此操作?
- 如何将原样的响应数据视为传递给现场?
我没有在siddhi中看到对此情况的描述。如果不支持,最好了解此方案的自定义扩展(基于http扩展)的详细信息。不太需要为http调用添加代理层的解决方案。
答案 0 :(得分:0)
经过一些实验,HOW_TO_GET_THIS_VALUE ='trp:item'。即使未在有效负载中使用,http接收器也应具有此字段。