这与这篇文章有点相关。我正在尝试使用TIdHTTP
and发布一些表单数据TIdMultiPartFormDataStream
,但是在使用Wireshark监视通信时,每个表单字段都会content-Type: text/plain
附加到它,并且由于某种原因,我将这些东西发送到的服务器不喜欢它。有没有办法可以确保只发送名称和值?内容传输也被添加,我可以使用以下方法删除它:
aFieldItem := PostStream.AddFormField(fName, fValue);
aFieldItem.ContentTransfer := '';
但我找不到任何方法来摆脱内容类型。此时正在发送的数据看起来像这样(在 Wireshark 中)
Boundary: \r\n----------051715151353026\r\n
Encapsulated multipart part: (text/plain)
Content-Disposition: form-data; name="description"\r\n
Content-Type: text/plain\r\n
Line-based text data: text/plain
\r\n
Testing new AW Mobile
我希望它看起来像:
Boundary: \r\n------WebKitFormBoundary32hCBG8zkGMBpxqL\r\n
Encapsulated multipart part:
Content-Disposition: form-data; name="description"\r\n
Data (21 bytes)
Data: 0d0a5465737420616e6420747261636520636f6d6d
Length: 21
谢谢山姆