【问题标题】:Apache Nifi : How to pass post params and capture response from post API - traditional non rest, non json APIApache Nifi:如何传递 post 参数并从 post API 捕获响应 - 传统的 non rest,non json API
【发布时间】:2017-09-04 08:10:13
【问题描述】:

我正在尝试从需要身份验证和请求参数作为请求正文一部分的发布 API 中提取数据。我猜,他们所做的是从 post 变量中访问数据。

到目前为止,我在文档中看到的是如何通过 JSON 或标头发送 POST。就我而言,没有标题,只有帖子正文参数。

通过 curl --data 选项调用这个 api 效果很好。

curl --data "username=xyz&password=xyz&function=xyz" http://example.com/api.php

如何在 nifi 中复制上述调用?

我尝试了多种方法都没有成功。最新的是生成流文件,更新属性(我填写参数的地方),调用http然后putfile。

但我遇到了错误 - api 无法验证我的请求。

谢谢

【问题讨论】:

    标签: apache-nifi


    【解决方案1】:

    如果您需要在body中发送以下数据,则将其放入您的flowfile的内容中。

    username=xyz&password=xyz&function=xyz
    

    将其放入GenerateFlowFile 处理器的Custom Text 属性的最简单方法。

    通常对于这种类型的正文,您必须提供内容类型标题:

    content-type: application/x-www-form-urlencoded

    如果您不需要任何额外的标头,那么您不必定义流文件的任何额外属性。

    【讨论】:

    • 谢谢@daggett,还是不行。但我想你已经为我指出了正确的方向。将继续探索。
    • 检查 InvokeHTTP 后流文件的属性 - 会有来自服务器的信息。通常对于这种正文,您必须提供内容类型标题:content-type: application/x-www-form-urlencoded
    猜你喜欢
    • 1970-01-01
    • 2014-03-04
    • 2020-11-05
    • 1970-01-01
    • 1970-01-01
    • 2015-11-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多