delphi - 我无法修复错误 SSL 例程:SSL23_GET_SERVER_HELLO:unknown protocol
问题描述
我尝试通过使用 Delphi 的 Indy 组件来获取网站“ https://www.whiskyauctioneer.com ”的页面内容。我正在使用 Delphi X7 和 Indy 10.6.2.0 以及来自 openssl-1.0.2u 的 dll
我认为自从这个网站使用 TLS 1.2 以来,我的代码不再工作了。
我尝试了不同的错误方法:
error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number
或者
error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
我的代码:
procedure TFormMain.Button21Click(Sender: TObject);
const
url = 'https://www.whiskyauctioneer.com';
var
lHTTP: TIdHTTP;
lIOHandler: TIdSSLIOHandlerSocketOpenSSL;
begin
IdHTTP1 := TIdHTTP.Create( self );
IdHTTP1.Request.UserAgent := 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0';
lIOHandler := TIdSSLIOHandlerSocketOpenSSL.Create( IdHTTP1 );
lIOHandler.SSLOptions.Method := sslvTLSv1_2;
IdHTTP1.IOHandler := lIOHandler;
showmessage(IdHTTP1.Get(url));
end;
我希望有人能指出我正确的方向。