【发布时间】:2025-11-29 06:15:01
【问题描述】:
我对从TIdHTTP 的Post() 方法获得的结果中的重音有很大的问题。
我正在访问的 URL 已经正确编码,我将结果保存到服务器上的文本文件中只是为了确保它是正确的。但是当我通过我创建的函数将数据带到 Delphi 时,而不是带有重音符号的字母,字符“?”正在出现。
例如,如果页面结果为Conexão não configurada,则函数的结果为Conex?o n?o configurada。
我已经尝试过在 * 中发布的几种表单,但都没有成功。
我的功能如下:
function HttpPost(PostUrl: string; PostParams: TStringList): string;
var
IdHTTP1: TIdHTTP;
IOHandler: TIdSSLIOHandlerSocketOpenSSL;
begin
IdHTTP1 := TIdHTTP.Create(nil);
IOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
IdHTTP1.IOHandler := IOHandler;
IdHTTP1.HandleRedirects := True;
IdHTTP1.Request.ContentType := 'text/html';
IdHTTP1.Request.CharSet := 'ISO-8859-1';
IdHTTP1.Request.UserAgent := 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0';
IdHTTP1.ReadTimeout := 20000;
try
Result := IdHTTP1.Post(PostUrl, PostParams);
except
on E:Exception do
begin
Result := 'ErrorExcept';
Msg(E,2);
end;
end;
IdHTTP1.Free;
IOHandler.Free;
end;
Indy 在 10.6.2.0 的更新版本
【问题讨论】:
-
仅供参考,Indy 的当前版本是 10.6.2.5438