DELPHI7操作INHTTP访问SSL出错信息解决方法

在Delphi7中,使用IdHttp进行HTTPS访问时,需添加IdSSLIOHandlerSocket控件并设置IOHandler。可能出现的错误包括:网络错误1004(检查网络)、HTTP500内部错误(参数格式错误)以及加载SSL库失败(需对应版本的libeay32.dll和ssleay32.dll)。解决方案包括检查网络、校验参数格式及确保正确放置DLL文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用IdHttp访问Https网址时,要加一个IdSSLIOHandlerSocket控件,设置idhttp的IOHandler属性为IdSSLIOHandlerSocket控件。

 

procedure TForm1.Button1Click(Sender: TObject);
var
  RData_TreatPost:string;
  FormParam:TStrings;
begin
  FormParam:=TStringList.Create;

。。。。。。。。。。。。。。。。

  FormParam.Add('minititle=');
  FormParam.Add('minipara=');
  FormParam.Add('pstrong=');
  FormParam.Add('longLogin=1');
  FormParam.Add('llnick=');
  FormParam.Add('sign=');
  FormParam.Add('need_sign=');
  FormParam.Add('not_duplite_str=');
  FormParam.Add('need_user_id=');
  FormParam.Add('from_encoding=');

   RData_TreatPost:='https://login.taobao.com/member/login.jhtml';
   Memo1.clear;
   HtmlEdit1.HTML:=(IdHTTP1.Post(RData_TreatPost,FormParam));
   Memo1.Lines.Add('OK');
   FormParam.Free;

end;

 

 

可能出现的错误:

1、stock error 1004#: 类似错误是因为网络问题,组件打不开相关网址引起。所以要检查下你的电脑网络,在IE中访问试下能否打开相关的网址。

2、http1.1 ,HTTP500内部错误:类似错误是因为Idhttp.Post后面的参数内容出错,格式不符合网站的要求引起,如    FormParam.Add('longLogin=1&'); 正常如上段代码,但这里却画蛇添足,加多了一个&. 如此之类。

3、can't load ssl library:类似错误是因为缺少两个DLL,使用SSL时,要在当前目录下放两个OPENSSL的DLL,分别是libeay32.dll和ssleay32.dll,而且它们有版本要求,不同的indy版本对应不同的DLL版本,虽然DLL名字一样。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值