我正在尝试通过postman发送带有POST请求的文件,并且该文件需要保存在本地FS中。我尝试了所有4个选项GetHttp,InvokeHttp,ListenHttp,HandleHttpRequest
。似乎GetHttp,InvokeHttp
需要在发送POST请求的最后运行web服务,这不适合我们的案例用例。我尝试使用ListenHttp
,但我无法更改它指向localhost的默认主机名选项。有办法改变吗?
我也尝试使用HandleHttpRequest
,似乎接收请求的客户端应该发送确认以结束发送方的连接,nifi用户指南不提供如何示例使用或配置。有人能为我提供一个我提到的用例的例子。
答案 0 :(得分:1)
ListenHttp启动一个嵌入式Jetty服务器,并且在创建连接器时没有指定主机名,根据Jetty文档说它应该绑定到所有可用的网络接口:
"此连接器绑定的网络接口为IP地址或 主机名。如果为null或0.0.0.0,则绑定到所有接口。"
要使用HandleHttpRequest,您还需要使用HandleHttpResponse ...您基本上会收到来自客户端的请求,该请求将变为流文件,通过您想要执行的任何处理传递流文件,然后将其发送到HandleHttpResponse以进行回复回到客户端。这里有一个模板,展示了如何使用它: