如何使用 post 方法发送多个请求
How to send multiple request by using post method
我想使用 post 方法发送多个 http 请求。
我正在使用 tHttpRequest 像这样调用 api :
我正在使用 post 方法,其参数从 .txt 文件中读取。如下所示:
login_id=7777&system_cd=1&role_cd=1
login_id=9999999999999&system_cd=1&role_cd=1
有效。但是它发送了两个第一个参数 line
的请求
login_id=7777&system_cd=1&role_cd=1
但是第二个参数行,没有发送
login_id=9999999999999&system_cd=1&role_cd=1
如何使用post方法发送多个请求?
更新
我想使用 post 方法发送多个 http 请求。 我正在使用 tHttpRequest 像这样调用 api :
我正在使用 post 方法,其参数从 .txt 文件中读取。如下所示:
login_id=7777&system_cd=1&role_cd=1
login_id=9999999999999&system_cd=1&role_cd=1
有效。但是它发送了两个第一个参数 line
的请求login_id=7777&system_cd=1&role_cd=1
但是第二个参数行,没有发送
login_id=9999999999999&system_cd=1&role_cd=1
如何使用post方法发送多个请求?
更新
非常感谢!!!它非常适合我。
但它只将成功响应写入日志文件
我想在同一个文件中写入所有响应(成功响应和非成功响应)
我该怎么做?
所以您想对参数文件中的每一行发出一个 post 请求。以下是实现此目标的方法:
tFileInputFullRow -- Main -- tFlowToIterate -- iterate -- tFixedFlowInput -- Main -- tFileOutputRaw (temp file) -- OnComponentOk -- tHttpRequest_1 (read temp file) -- main -- tFileOutputDelimited_1
这样做是,遍历参数文件中的行,并为每一行创建一个包含该行的文件(使用 [=13] 设置的全局变量读取 tFixedFlowInput
中的行=] 并将其输出到文件),然后通过指定要从中读取参数的新创建文件来调用 tHttpRequest
。
编辑
据我了解,您想将响应和错误消息(如果有)写入同一个文件。以下是您可以如何做到这一点:
在If
触发器中,需要测试tHttpRequest_1
的响应码:
((Integer)globalMap.get("tHttpRequest_1_RESPONSE_CODE")) != 200
如果请求 returns 一个错误代码,那么你读取错误信息 (String)globalMap.get("tHttpRequest_1_ERROR_MESSAGE")
并将其写入 tFileOutputDelimited_2
您可以将包含请求正文的文件传递给 Post parameters from file
像这样。
{
"login": [
{
"login_id":9999999999999,
"system_cd":1,
"role_cd":1
},
{
"login_id":8888888888,
"system_cd":3,
"role_cd":2
}
]
}
可以参考这个文档。 https://help.talend.com/reader/MjIZDoU6r0vLbCpGh5GAcg/WjbsVyUCV2MD8C7_uVYKRA