curl - 如何在命令行设置Content-Length标头?

时间:2018-04-17 16:25:15

标签: curl command-line

我正在使用curl命令行工具。我喜欢

curl -XPUT "https://example.org?p1=value1&p2=value2" -H"Content-Type:application/x-www-form-urlencoded"

服务器回复

HTTP/1.1 411 Length Required

解决方案通常是设置适当的Content-Length标题。

但在这种情况下,Content-Length是什么以及如何使用curl设置它?

2 个答案:

答案 0 :(得分:1)

默认情况下,curlContent-Length参数提供数据时设置适当的-d标头。在您的情况下,服务器似乎等待正文中的一些数据。但由于某种原因,您决定将数据传递到网址中。

1。简单解决方案

-d""添加到命令中。这将导致curl将适当的长度设置为0.您还可以将适当的标头设置为-H"Content-Length:0"

2. 为什么要将数据作为查询参数传输?

尝试改为: curl -XPUT -d'p1=value1\np2=value2' https://example.org

答案 1 :(得分:0)

curl -X POST http://localhost:8080 -d "Content-Length: 0"