以下流程采用用户名/密码组合并通过 InvokeHTTP 针对 API 进行身份验证:
InvokeHTTP 的结果是一个身份验证 token :
我想在之前的任何 API 调用中使用此 token 。我需要什么流程来提供身份验证 token 作为 InvokeHTTP 的授权 header ? header 必须如下所示:
Authorization: Token ...
最佳答案
您可以使用EvaluateJsonPath
处理器使用 JsonPath 表达式 $.token
和 Destination flowfile-attribute
提取 JSON 值,这会将其放置在属性中。因此,使用名为 Authorization 且值为 $.token
的动态属性将导致 InvokeHTTP
发送一个值为 Authorization: abcdef 的 header ....
。为了正确格式化 header ,您需要在 EvaluateJsonPath
和 InvokeHTTP
之间使用 UpdateAttribute
处理器,以使用表达式更新属性值用于添加文字字符串的语言表达式 Token ${Authorization}
。
关于apache-nifi - 如何使用 InvokeHTTP 的 JSON 响应为另一个 InvokeHTTP 创建 header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52681958/