使用 Indy 发布时连接 SSL 时出错
Error connecting with SSL when posting using Indy
我正在尝试使用 Delphi 5 通过 TIdHTTP (Indy) 在 Web 服务上 post,每当我调用 post 方法时,它 returns "Error connecting with SSL error" 异常。
这是我正在尝试的代码 运行
FHandle := TIdSSLIOHandlerSocket.Create(nil);
FHandle.SSLOptions.Method := sslvTLSv1;
IdHttp.IOHandler := FHandle;
IdHttp.HandleRedirects := True;
IdHTTP.Request.CustomHeaders.Add('Content-Type: application/json');
IdHttp.Request.ContentType := 'application/json';
Load();
vAux := TMemoryStream.Create();
try
WriteStringToStream(vAux, edJson.Text);
vAux.Position := 0;
vRet := IdHTTP.Post(edHost.Text, vAux);
finally
vAux.Free();
end;
似乎无论我在 CustomHeaders 或任何其他 属性 中更改什么,都会发生同样的错误。
我尝试将 de SSLOption.Method 更改为所有可用的,但我无法让它工作。
我有什么尝试的建议吗?
我弄明白问题出在哪里了。这是来自 TIdSSLIOHandlerSocket
组件的 CertFile
属性 上的证书文件错误,我什至没有意识到它在那里。在指出正确的证书文件后,一切顺利。谢谢大家的见解!
我正在尝试使用 Delphi 5 通过 TIdHTTP (Indy) 在 Web 服务上 post,每当我调用 post 方法时,它 returns "Error connecting with SSL error" 异常。
这是我正在尝试的代码 运行
FHandle := TIdSSLIOHandlerSocket.Create(nil);
FHandle.SSLOptions.Method := sslvTLSv1;
IdHttp.IOHandler := FHandle;
IdHttp.HandleRedirects := True;
IdHTTP.Request.CustomHeaders.Add('Content-Type: application/json');
IdHttp.Request.ContentType := 'application/json';
Load();
vAux := TMemoryStream.Create();
try
WriteStringToStream(vAux, edJson.Text);
vAux.Position := 0;
vRet := IdHTTP.Post(edHost.Text, vAux);
finally
vAux.Free();
end;
似乎无论我在 CustomHeaders 或任何其他 属性 中更改什么,都会发生同样的错误。
我尝试将 de SSLOption.Method 更改为所有可用的,但我无法让它工作。
我有什么尝试的建议吗?
我弄明白问题出在哪里了。这是来自 TIdSSLIOHandlerSocket
组件的 CertFile
属性 上的证书文件错误,我什至没有意识到它在那里。在指出正确的证书文件后,一切顺利。谢谢大家的见解!