我正在尝试以 utf-8 格式发布一个请求,但是服务器正在以 Ascii 格式获取它。
尝试了post的TstringList格式。
尝试了流格式
尝试强制 TStringStream 具有 UTF8 编码。
尝试将 indy 更新为 xe5 indy
这是一个示例代码:
var
server:TIdHttp;
Parameters,response:TStringStream;
begin
response := TStringStream.Create;
Parameters := TStringSTream.create(UTF8String('param1=Value1¶m2=عربي/عرب¶m3=Value3'),TEncoding.UTF8);
Server.Post(TIdURI.URLEncode('http://www.example.com/page.php'),Parameters,response);
end;
现在阿拉伯编码在网络嗅探器中作为 Ascii 传递。
0060 d8 b9 d8 b1 d8 a8 d9 8a 2f d8 b9 d8 b1 d8 a8 26 ........ /......&
如何强制 Indy Http id 在 Utf-8 中而不是在 Ascii 中传递请求参数?