当前位置:  开发笔记 > 运维 > 正文

如何使用curl命令行工具POST LF?

如何解决《如何使用curl命令行工具POSTLF?》经验,为你挑选了1个好方法。

我正在尝试使用来自Linux shell脚本的CURL POST到SMS提供程序(Sybase 365)的HTTP网关.

我需要传递以下数据(注意[]和LF字符)

[MSISDN]
List=+12345678
[MESSAGE]
Text=Hello
[END]

如果我使用-F参数提交文件,CURL将删除LF,例如

curl -F @myfile "http://www.sybase.com/..."

在服务器上导致此问题(被拒绝)

[MSISDN]List=+12345678[MESSAGE]Text=Hello[END]

我有什么办法可以避免这种情况,还是需要替代工具?

我正在使用包含我的数据的文件进行测试,但我想在实践中避免这种情况,直接从脚本中进行POST.



1> Athena..:

尝试使用--data-binary而不是-d(ata-ascii).

从手册:

--data-binary(HTTP)以与--data-ascii类似的方式发布数据,尽管使用此选项时,已发布数据的整个上下文保持原样.

如果您想发布没有--data-ascii选项的strip-newlines功能的二进制文件,这适合您.如果多次使用此选项,则第一个选项将附加数据.

ETA:哎呀,我应该更仔细地阅读这个问题.你使用的是-F,而不是-d.但--data-binary可能还是值得一试.

推荐阅读
家具销售_903
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有