提问人:somepage 提问时间:11/14/2023 最后编辑:tripleeesomepage 更新时间:11/15/2023 访问量:47
如何将JSON从文件插入到CURL的POST请求中
How to insert JSON from file into POST request for CURL
问:
我正在尝试使用 向服务器发送 POST 请求。我正在尝试在请求正文中从文件添加字符串,但出了点问题。curl
请求示例:
curl -X POST -H "Content-Type: application/json" \
-d '{"property_1":"value_1", "property_2":"value_2", "property_3":"'$(cat file.json)'"}'
http://localhost:8000/update
任何想法,怎么了?
答:
1赞
Paul Hodges
11/15/2023
#1
我同意 tripleee 的观点 - 文件中的字符可能会混淆您的 CLI,并且需要引用输出。
curl -X POST -H "Content-Type: application/json" \
-d '{"property_1":"value_1", "property_2":"value_2", "property_3":"'"$(<file.json)"'"}' \
http://localhost:8000/update
顺便说一句,我个人更喜欢避免使用连续行,并且通常会使用 vars 和数组来代替,以提高可读性和易于维护。
boilerplate='"property_1":"value_1","property_2":"value_2","property_3":"'
args=( -X POST
-H "Content-Type: application/json"
-d "{$boilerplate$(<file.json)\"}"
)
curl "${args[@]}" http://localhost:8000/update
这导致(有效)
curl -X POST -H 'Content-Type: application/json' -d '{"property_1":"value_1","property_2":"value_2","property_3":"<your file stuff>"}' http://localhost:8000/update
评论
"$(cat file.json)"
curl