【问题标题】:How to get the status header for a website programmatically如何以编程方式获取网站的状态标头
【发布时间】:2010-10-01 15:26:56
【问题描述】:

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

有人可以帮忙吗?

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

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

【问题讨论】:

  • 如果你只是想知道“状态”,你应该使用 TIdHTTP 的 Head 方法。使用 get 您将获得整个潜在的大页面/文件。使用 Head 方法,您将仅向服务器询问该文件的 HTTP 标头(几个字节)。这包括有关资源的状态和其他信息,最大限度地减少带宽和服务器负载。

标签: delphi windows-services http-headers service http-status-codes


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-11
    • 1970-01-01
    相关资源
    最近更新 更多