如何使用“CURL”在“数据二进制”中的文本中间插入文件的内容? 如何在代码的文本中插入文件的内容——数据二进制< /代码>使用 CURL < /P>

如何使用“CURL”在“数据二进制”中的文本中间插入文件的内容? 如何在代码的文本中插入文件的内容——数据二进制< /代码>使用 CURL < /P>,curl,Curl,我想把二进制文件的内容插入中的数据二进制< ,例如数据二进制=abc@FILEdef“,并让curl相应地更新内容长度标题 然而,前面的例子似乎不起作用 关于如何实现这一点有什么想法吗 我能想到的唯一方法是预先将文本添加到文件,但这对于大量文本来说相当麻烦。实现这一点而不必首先生成临时文件的一种方法是在stdin上生成curl的POST数据。例如: (printf "beginning\n" && cat $filename && printf "trailer\

我想把二进制文件的内容插入<代码>中的数据二进制< <代码>,例如<代码>数据二进制=abc@FILEdef“,并让
curl
相应地更新
内容长度
标题

然而,前面的例子似乎不起作用

关于如何实现这一点有什么想法吗


我能想到的唯一方法是预先将文本添加到
文件
,但这对于大量文本来说相当麻烦。

实现这一点而不必首先生成临时文件的一种方法是在stdin上生成curl的POST数据。例如:

(printf "beginning\n" && cat $filename && printf "trailer\n") | curl --data-binary @- $url

谢谢@DanielStenberg。我真的需要这个,因为有时候我会从代理工具(例如Burp)复制一个巨大的帖子正文,我需要使用
curl
使用不同的(二进制)文件负载来重播它。既然您是Curl的创建者,为什么诸如
--data
的帮助菜单将其列为
POST
数据,而实际上,is也用于
PUT
等?因为
--data
生成一篇文章,除非您用
-X
覆盖Curl使用的方法。执行PUT的标准方法是使用
-T
。谢谢,我知道这不是主题,但我会将
--data
的帮助文本更改为“…请求正文…(暗示POST)”。它表示已将POST请求中的指定数据发送到第一行的HTTP服务器。你怎么能认为它不使用POST?事实上,我认为它使用POST。只是,通过读那句话,我觉得我不能用数据来表示PUT或WevDAV。