使用 --data-binary 通过 cURL 发布 XML

使用 --data-binary 通过 cURL 发布 XML

我遇到了一个非常典型的问题。我有一个 XML 文件需要发布到服务器。该网站的网络工程师告诉我使用 cURL 函数。他提供给我的函数是...

curl --data-binary @/opt/somefile.xml http://1.2.3.4/gateway/submit?source=FOO&conversationid=1234567

当我运行此命令时,我不断收到错误“错误的 URL,返回 400 状态”

我已经在这个问题上困扰了很长时间,我感到非常沮丧。我试过运行...

curl http://1.2.3.4/gateway/submit?source=FOO&conversationid=1234567

我收到了来自机器的响应“测试消息”,以及主机系统的一些标识参数。这可能意味着目标 URL 正常,并且正在通过 cURL 命令进行访问。

通过 --data-binary 发送 XML 文件有什么特殊要求吗?XML 是否需要以特殊方式格式化?cURL 命令的语法是否不正确?

任何帮助都将不胜感激!

答案1

我能够找出问题所在。这个问题的答案早在 Letizia 的讨论中就已给出,但问题出在我传递的 URL 的语法上。显然,

...提交?来源=FOO&conversationid=1234567

但实际上我需要输入“I”(大写 I,而不是小写 i)。这是一个拼写错误,花了一个多星期才解决!

但是,由于缺少“引号”(单引号),因此该命令也是错误的。

相关内容