Indy 10 Http 服务器示例

Posted

技术标签:

【中文标题】Indy 10 Http 服务器示例【英文标题】:Indy 10 Http Server sample 【发布时间】:2011-10-31 03:49:42 【问题描述】:

我需要一个简单的 Indy 10 Http Server 代码示例,当请求(发布)只是显示它时 有 Indy 9 样品吗? 谢谢

【问题讨论】:

那是什么?印地 10 还是印地 9? 你可以看看 ExtPascal 源码 【参考方案1】:

Indy 9 samples 仍可在 IndyProject 网站上使用,并包含一个 HTTPServer 演示项目。 Indy 10 Demo Playground 也可以。

在 IdHTTPServer 中,Get 和 Post 命令本质上是相同的,并在 CommandGet 事件中处理。

【讨论】:

请注意,链接现已过期 谢谢!你真是太好了【参考方案2】:
    开始一个新的 VCL Forms 项目 将 TidHTTPServer 组件拖放到表单上

    双击表单创建OnCreate()事件并激活服务器

    IdHTTPServer1.Active := True;

    返回表单,选择 HTTP Server 组件,并创建一个 OnCommandGet 事件

在这个 OnCommandGet 事件中(每当 GET/POST 发生时在子线程中调用该事件),通过填充响应来处理请求。

AResponseInfo.ContentText := '<html><head><title>My First Response</title></head>' + 
  '<body>Command: ' + ARequestInfo.Command +
  '<br />Host: ' + ARequestInfo.Host +
  '<br />URI: ' + ARequestInfo.URI +
  '<br />UserAgent: ' + ARequestInfo.UserAgent +
  '</body></html>';

根据您的 Delphi 版本,您可能还需要将 IdContext 添加到您的 Uses 子句

运行您的演示应用程序,然后打开浏览器访问http://localhost,您应该会收到响应。 (除非您在端口 80 上监听了其他东西,在这种情况下,您的演示应用程序将生成异常)

【讨论】:

很遗憾,这个回复是关于 Windows exe 的,而不是关于 Windows 服务的。 请重新阅读帖子。它在哪里谈论 Windows 服务?

以上是关于Indy 10 Http 服务器示例的主要内容,如果未能解决你的问题,请参考以下文章

IdHTTPServer(indy10)开发REST中间件

Indy TCP 客户端示例?

Delphi中Indy 10的安装和老版本的卸载

delphi 7 下安装 indy 10.5.8 教程

INDY 10.1.5 - 哪些 SSL dll 适用于 Delphi 2006?

在 Delphi 2009 中逐步升级 Indy 10