Apache Bench POST:是否可以从字符串或标准输入而不是文件中读取?

Tom*_*Tom 5 apache http apachebench

我有一个 Apache Bench POST 测试命令,例如: ab -p test.json -n 1000 -c 100 -T "application/json" "http://localhost:8080/test"

然而,我的 test.json 非常简单,例如: {"foo": 1}

是否可以直接将其读取到ab命令中,而无需文件引用?就像是: ab -p '{"foo": 1}' -n 1000 -c 100 -T "application/json" "http://localhost:8080/test"

(我知道这行不通,只是想知道是否有一个好的 linux 文件模仿技巧之类的)

目前我唯一的解决方法是: echo '{"foo": 1}' > test.json && ab -p test.json -n 1000 -c 100 -T "application/json" "http://localhost:8080/test" && rm test.json

但我发现这有点太笨拙了。

小智 6

尝试:

cat test.json | ab -p /dev/stdin -n 1000 -c 100 -T "application/json" "http://localhost:8080/test"
Run Code Online (Sandbox Code Playgroud)