如何使用InvokeHTTP的JSON响应为另一个InvokeHTTP创建标头?

时间:2018-10-06 18:08:43

标签: apache-nifi

以下流程采用用户名/密码组合,并通过InvokeHTTP针对API进行身份验证:

enter image description here

InvokeHTTP的结果是身份验证令牌:

enter image description here

我想在任何先前的API调用中使用此令牌。我需要什么流程来提供auth令牌作为InvokeHTTP的授权标头?标头必须如下所示:

Authorization: Token ...

1 个答案:

答案 0 :(得分:4)

您可以使用EvaluateJsonPath处理器使用JsonPath表达式$.token Destination flowfile-attribute提取JSON值,这会将其放在属性中。因此,使用值为$.token的名为 Authorization 的动态属性将导致InvokeHTTP发送带有值Authorization: abcdef....的标头。为了正确格式化标题,您将需要在UpdateAttributeEvaluateJsonPath之间使用InvokeHTTP处理器,以使用表达式语言表达式Token ${Authorization}来更新属性值文字字符串。