TIdMultiPartFormDataStream TIDHTTP的参数问题?

深圳背包客 2013-11-11 07:35:42
代码如下,利用TIDHTTP和TIdMultiPartFormDataStream post参数

para = “aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa”;
TIdMultiPartFormDataStream *stream = new TIdMultiPartFormDataStream();

try{
stream->AddFormField("method",method);
stream->AddFormField("timestamp",timestampStr);
stream->AddFormField("para",para);

stream->Position = 0;
IdAntiFreeze1->OnlyWhenIdle = false;
IdHTTP1->Request->ContentType = "multipart/form-data";
IdHTTP1->Post("http://127.0.0.1//index.php",stream));

}__finally{
delete stream;
}
利用抓包工具查看,发现自动添加了“=”(70个自己就添加一个)
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa=
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa=
aaaaaaaaaaa
...全文
599 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
深圳背包客 2013-12-12
  • 打赏
  • 举报
回复
没有获得答案,结贴。
ccrun.com 2013-11-12
  • 打赏
  • 举报
回复
看到了,我研究研究先。
深圳背包客 2013-11-12
  • 打赏
  • 举报
回复
谢谢妖哥的回答,我截图如下:

引用 1 楼 ccrun 的回复:
多加两个参数试试:
stream->AddFormField("para", para, "iso-8859-1", "8bit");


深圳背包客 2013-11-12
  • 打赏
  • 举报
回复
引用 1 楼 ccrun 的回复:
多加两个参数试试:
stream->AddFormField("para", para, "iso-8859-1", "8bit");
这样修改仍然没有用,仍然会被添加=,不知道为啥。代码如下: TIdMultiPartFormDataStream *stream = new TIdMultiPartFormDataStream(); AnsString para = Eidt1->Text; try{ stream->AddFormField("para",para,"iso-8859-1", "8bit"); stream->Position = 0; IdAntiFreeze1->OnlyWhenIdle = false; IdHTTP1->Request->ContentType = "multipart/form-data"; IdHTTP1->Post("http://127.0.0.1/index.php",stream)); }__finally{ delete stream; }
ccrun.com 2013-11-11
  • 打赏
  • 举报
回复
多加两个参数试试:
stream->AddFormField("para", para, "iso-8859-1", "8bit");

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧