Delphi 如何以编程方式获取网站的状态标头

Delphi 如何以编程方式获取网站的状态标头,delphi,windows-services,http-headers,service,http-status-codes,Delphi,Windows Services,Http Headers,Service,Http Status Codes,我正在用Delphi编写一个win32服务(如果您不了解Delphi,应该能够翻译任何其他代码),它需要获取网站的状态。我知道如何在.NET中实现这一点,但不确定是否使用普通的基于windows的编程。所以,我需要查询一个网站,并返回状态码200,301等。然后,我的计划是解析返回的数据,并在我的一个站点出现故障时发送电子邮件 有人能帮忙吗 编辑:这是我最后使用的代码-使用TidHttpIndy组件 IdHTTP.Get('http://www.example.com'); if IdHTT

我正在用Delphi编写一个win32服务(如果您不了解Delphi,应该能够翻译任何其他代码),它需要获取网站的状态。我知道如何在.NET中实现这一点,但不确定是否使用普通的基于windows的编程。所以,我需要查询一个网站,并返回状态码200,301等。然后,我的计划是解析返回的数据,并在我的一个站点出现故障时发送电子邮件

有人能帮忙吗

编辑:这是我最后使用的代码-使用TidHttpIndy组件

IdHTTP.Get('http://www.example.com');
  if IdHTTP.Connected then begin
     ResponseCode := IntToStr(IdHTTP.ResponseCode);
     ShowMessage(ResponseCode);
  end;

拿Indy或Synapse库(两者都是免费的,Indy包含在Delphi中,Synapse可以在google上找到)来说,使用他们的HTTP客户端类来完成这项工作

如果您只想知道“状态”,那么应该使用TIdHTTP的Head方法。使用get,您将获得整个可能较大的页面/文件。使用Head方法,您将只向服务器请求该文件的HTTP头(几个字节)。这包括资源的状态和其他信息,最大限度地减少带宽和服务器负载。