You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Peter Spiller (Jira)" <ji...@apache.org> on 2023/07/28 08:22:00 UTC
[jira] [Commented] (NIFI-7505) Add InvokeHTTPRecord processor
[ https://issues.apache.org/jira/browse/NIFI-7505?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17748486#comment-17748486 ]
Peter Spiller commented on NIFI-7505:
-------------------------------------
I've had a go at creating an InvokeHTTPRecord processor, as record-based HTTP requests are something I've been having issues with for a while. It's based on the InvokeHTTP processor, but with modifications for record-based operation (e.g. varying request parameters come from individual records instead of flowfile attributes):
https://github.com/apache/nifi/pull/7532
It's possible to achieve something like this by using a LookupRecord processor combined with a RestLookupService, but I've had problems with this approach. RestLookupService is designed around looking up data, not making requests that potentially have side-effects. If HTTP requests encounter transient errors, retrying them is difficult and requires splitting and merging record-based flowfiles. Semantically, using a LookupService to make requests with side-effects doesn't feel great.
The PR isn't complete yet (it still needs tests), but I've created it in case anybody has any feedback on the approach I'm taking.
> Add InvokeHTTPRecord processor
> ------------------------------
>
> Key: NIFI-7505
> URL: https://issues.apache.org/jira/browse/NIFI-7505
> Project: Apache NiFi
> Issue Type: Improvement
> Components: Extensions
> Affects Versions: 1.11.4
> Reporter: Andy LoPresto
> Priority: Major
> Labels: Record, http, processor, rest
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Some users have recently requested being able to invoke a specific URL via {{InvokeHTTP}} on every record in a flowfile. Currently, the {{InvokeHTTP}} processor can only handle one piece of data per flowfile. There are some workarounds available for specific patterns with {{LookupRecord}} + {{RestLookupService}}, but this is not a complete solution. I propose introducing an {{InvokeHTTPRecord}} processor, providing the {{InvokeHTTP}} functionality in conjunction with the record processing behavior.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)