使用 SSL 连接时出错
Error connecting with SSL
我正在尝试连接到此 url,只是使用获取请求。
Goberment page
但总是得到错误 EIdOSSLConnectError "Error connecting with SSL"
我使用的代码是这个,它适用于其他页面,但不适用于这个
IdHTTP1.HandleRedirects := true;
IdHTTP1.AllowCookies := true;
IdHTTP1.IOHandler := TIdSSLIOHandlerSocket.Create(IdHTTP1);
IdHTTP1.CookieManager := TIdCookieManager.Create(IdHTTP1);
with TIdSSLIOHandlerSocket(IdHTTP1.IOHandler) do begin
SSLOptions.Method := sslvTLSv1;
SSLOptions.Mode := sslmUnassigned;
SSLOptions.VerifyMode := [];
SSLOptions.VerifyDepth := 0;
PassThrough := True;
end;
IdHttp1.Request.UserAgent := 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:52.0) Gecko/20100101 Firefox/52.0';
IdHTTP1.RedirectMaximum := 30;
sHtml := IdHTTP1.Get('https://loginc.mat.sat.gob.mx/nidp/app/login?id=XACCertiSAT&sid=0&option=credential&sid=0');//<----Error here
Delphi 7,印第 9.00.10
感谢任何建议
该站点似乎需要 TLS v1.2,因为这是我使用浏览器访问该站点时协商的内容。
此外,如果我接下来在我的 PaleMoon 浏览器中转到 about:config 并将名为 security.tls.version.max 的首选项设置为 1,我将重新访问您的 url 然后使用 TLS v1.0 和我得到:
安全连接失败
连接到 loginc.mat.sat.gob.mx 时出错。
无法与对等方安全通信:没有通用的加密算法。
(错误代码:ssl_error_no_cypher_overlap)
但是,我尝试过的其他网站(例如银行)在 TLS v1 这样设置的情况下仍然可以正常工作。看来您的目标网站很挑剔,所以我会尝试调整您的路线:
SSLOptions.Method := sslvTLSv1;
我正在尝试连接到此 url,只是使用获取请求。 Goberment page 但总是得到错误 EIdOSSLConnectError "Error connecting with SSL"
我使用的代码是这个,它适用于其他页面,但不适用于这个
IdHTTP1.HandleRedirects := true;
IdHTTP1.AllowCookies := true;
IdHTTP1.IOHandler := TIdSSLIOHandlerSocket.Create(IdHTTP1);
IdHTTP1.CookieManager := TIdCookieManager.Create(IdHTTP1);
with TIdSSLIOHandlerSocket(IdHTTP1.IOHandler) do begin
SSLOptions.Method := sslvTLSv1;
SSLOptions.Mode := sslmUnassigned;
SSLOptions.VerifyMode := [];
SSLOptions.VerifyDepth := 0;
PassThrough := True;
end;
IdHttp1.Request.UserAgent := 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:52.0) Gecko/20100101 Firefox/52.0';
IdHTTP1.RedirectMaximum := 30;
sHtml := IdHTTP1.Get('https://loginc.mat.sat.gob.mx/nidp/app/login?id=XACCertiSAT&sid=0&option=credential&sid=0');//<----Error here
Delphi 7,印第 9.00.10
感谢任何建议
该站点似乎需要 TLS v1.2,因为这是我使用浏览器访问该站点时协商的内容。
此外,如果我接下来在我的 PaleMoon 浏览器中转到 about:config 并将名为 security.tls.version.max 的首选项设置为 1,我将重新访问您的 url 然后使用 TLS v1.0 和我得到: 安全连接失败 连接到 loginc.mat.sat.gob.mx 时出错。 无法与对等方安全通信:没有通用的加密算法。 (错误代码:ssl_error_no_cypher_overlap)
但是,我尝试过的其他网站(例如银行)在 TLS v1 这样设置的情况下仍然可以正常工作。看来您的目标网站很挑剔,所以我会尝试调整您的路线: SSLOptions.Method := sslvTLSv1;