一个Button 一个Memo
DELPHI5 + Indy9 和 Delphi7自带Indy都测试过
procedure TForm1.Button1Click(Sender: TObject);
var
  idHttp1: TIdHttp;
begin
  idHttp1 := TIdHttp.Create(Self);
//  idhttp1.Disconnect;
//  idhttp1.HandleRedirects := True;
//  idhttp1.ReadTimeout:= 30000;
  Memo1.Text := idHttp1.Get('http://www.baidu.com/');
end;
Get网页产生异常,但是如果把网址改为 http://www.ahjoe.com/ 则没有异常。现象看起来象是百度禁止IDHTTP访问。谁知道如何解决?

解决方案 »

  1.   

    自己解决了.
    IdHTTP1.Request.UserAgent := 'ahjoe.com';
      

  2.   

    UserAgent
    好像是客户端浏览器类型吧
    难道那网站对这个参数做了限制...
    禁止indy的访问
      

  3.   

    开发在局域网的一台机器上的IE的地址栏中输入以下的内容可以成功发送短消息
    https://ssms/MsgSendUnReg.jsp?Appid=COPM&Password=CLPCOPM2006&Msisdn=92202210&Msgcode=1&Msgcontent=TestURL2&Priority=1在delphi中要实现相同的功能,代码如下:
     
           
        url:=‘https://ssms/MsgSendUnReg.jsp?Appid=COPM&Password=CLPCOPM2006&Msisdn=92202210&Msgcode=1&Msgcontent=TestURL2&Priority=1’;   
      
        fso:=CreateComObject(CLASS_FileSystemObject) as FileSystemObject;     
        http:=CreateComObject(CLASS_WinHttpRequest) as WinHttpRequest;   
        http.SetTimeouts(10000,10000,10000,10000);   
        http.Option[WinHttpRequestOption_SslErrorIgnoreFlags]:=13056;   
        http.Open('POST',url,EmptyParam);   
           
    却发送失败。请高手指点一下,应该怎么才对呢?谢谢了!!
      

  4.   


    对,就是禁止Indy访问了。