如何使用cURL在标题中插入换行符

如何使用cURL在标题中插入换行符,curl,http-headers,newline,Curl,Http Headers,Newline,我想使用cURL测试RESTful web服务资源 在这项工作中,其中一个标头需要换行符才能将数据正确地传递给服务器 除了无休止地搜索我认为很常见但毫无用处的内容外,我还尝试使用(\n): 这是行不通的。当在服务器上读取头时,断行是无法识别的——我认为cURL实际上删除了它 我还尝试使用(%0A): 我应该如何设计帖子,在一些数据和更多数据之间插入一个换行符 我正在Mac上使用终端尝试从命令行传递原始换行符: $ curl -X POST [...] --header "dataHeader:

我想使用cURL测试RESTful web服务资源

在这项工作中,其中一个标头需要换行符才能将数据正确地传递给服务器

除了无休止地搜索我认为很常见但毫无用处的内容外,我还尝试使用(\n):

这是行不通的。当在服务器上读取头时,断行是无法识别的——我认为cURL实际上删除了它

我还尝试使用(%0A):

我应该如何设计帖子,在
一些数据
更多数据
之间插入一个换行符


我正在Mac上使用终端

尝试从命令行传递原始换行符:

$ curl -X POST [...] --header "dataHeader: some data<press ENTER>
> some more data" http://localhost:8080/api/test
$curl-X POST[…]--header“数据头:一些数据
>更多数据“http://localhost:8080/api/test

尝试从命令行传递原始换行符:

$ curl -X POST [...] --header "dataHeader: some data<press ENTER>
> some more data" http://localhost:8080/api/test
$curl-X POST[…]--header“数据头:一些数据
>更多数据“http://localhost:8080/api/test


您可能希望尝试同时使用换行和回车。因此,
--header“dataHeader:some data\r\n some more data”
此外,您在标题字符串上缺少结束引号,但我认为这只是一个非常错误的错误,但也不起作用。当cURL对标题进行编码时,行和回车符似乎都被删除。您是否尝试对第二行使用单独的
--header
开关?规范要求数据位于一个标题中。我不制定规则,我只是试着遵循并随后测试它们。我可以从Java中执行此操作,但如果可能的话,我希望使用cURL。我认为cURL不会删除
\n
。请尝试
curl-v-H“dataHeader:some data\n some more data”-o/dev/null example.com
。您可能希望同时使用换行符和回车符。因此,
--header“dataHeader:some data\r\n some more data”
此外,您在标题字符串上缺少结束引号,但我认为这只是一个非常错误的错误,但也不起作用。当cURL对标题进行编码时,行和回车符似乎都被删除。您是否尝试对第二行使用单独的
--header
开关?规范要求数据位于一个标题中。我不制定规则,我只是试着遵循并随后测试它们。我可以从Java中执行此操作,但如果可能的话,我希望使用cURL。我认为cURL不会删除
\n
。请尝试
curl-v-H“dataHeader:some data\n some more data”-o/dev/null example.com
。按编写方式键入它。让双引号保持打开状态,按enter键,然后继续第二行。我的困惑在于按enter键“发送”命令,结果终端显示“不匹配”。“您使用的是哪个shell?”?至少在bash和sh中是有效的。保留引号打开应该会产生第二行PS2提示符(通常为“>”)。在我的Macbook Pro终端上键入“echo”test(不带单引号)时会发生什么情况在命令行上?OSX应该使用Bash。按编写的方式键入它。保持双引号打开,按enter键,然后在第二行继续。我的困惑在于,按enter键“发送”命令并导致终端显示“不匹配”“你用的是哪个贝壳?至少在bash和sh中是有效的。保留引号打开应该会产生第二行PS2提示符(通常为“>”)。在我的Macbook Pro上的终端当您在命令行上键入“echo”test(不带单引号)时会发生什么?OSX应该使用Bash。
$ curl -X POST [...] --header "dataHeader: some data<press ENTER>
> some more data" http://localhost:8080/api/test