【发布时间】:2015-03-19 04:27:35
【问题描述】:
我需要帮助。这是我第一次在这里提出问题,但找到了很多很好的答案,我希望有人能帮助我。我正在尝试通过使用 Curl 的批处理文件创建 HTTP POST。我已经成功设置了我的标题并从 WireShark 获取了所有必需的信息,但是我被卡住了。我似乎无法让 POST BODY 正确。有人可以指出我正确的方向吗?我的最终目标是模拟与单击生成备份文件的 silverlight Web 应用程序中的按钮相同的操作。 这是我当前的带有标头的 HTTP POST。当您访问 data -d 时,您将看到我发现显示的 POST DATA。
curl -H "Accept: " -H "User-Agent: " -H "Content-Type: " -H "Host:xx.xx.xx.xx" -H "User-Agent:Mozilla/5.0 (Windows NT 6.3; WOW64; rv:36.0) Gecko/20100101 Firefox/36.0" -H "Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" -H "Accept-Language:en-US,en;q=0.5" -H "Accept-Encoding:gzip, deflate" -H "Connection:keep-alive" -H "Content-Type:application/msbin1" -H "Content-Length:53" -H "Referer:http:/xx.xx.xx.xx/ClientBin/System_Management_Center.xap" -X POST -d @BackupConfighttp://tempuri.org/@sysTypesmVACS http://xx.xx.xx.xx/ClientBin/System_Management_Center-Web-Services-VACSDomainService.svc/binary/BackupConfig
在我的批处理文件中运行它的结果是无法读取文件,这是一个空帖子。 我注意到将帖子数据复制到网络浏览器显示它包含的内容比在wireshark中显示的要多。它显示为@BackupConfighttp://tempuri.org/@sysType™smVACS,搜索时谷歌返回 @BackupConfig%08%13http://tempuri.org/@%07sysType%06smVACS
我厌倦了用谷歌返回的数据替换我的 -d 行,批处理文件返回“无法从文件中读取数据,”BakupConfigC:\users\sean\desktop\genera~1.BAT83http://tempuri. org/@C:\users\sean\desktop\genera~1.bat7sysTypeC:\users\sean\desktop\genera~1.bat6smVACS",这是一个空的 POST。
非常感谢任何帮助!
【问题讨论】:
-
update 我发现post数据包含Unicode字符。帖子数据的扩展版本看起来像这样
@(Form Feed)BackupConfig(Backspace)(Device Control 3)http://tempuri.org/@(Bell Ring)sysType(Acknowledge)smVACS(Start of Header)希望有了这些信息,有人可以提供帮助!谢谢!
标签: silverlight batch-file curl http-post uri