Indy 10 Http Server sample
Asked Answered
S

2

14

I need a simple code sample for Indy 10 Http Server When request (post) simply displays it Is there an Indy 9 sample for this? Thanks

Saphra answered 20/8, 2011 at 10:4 Comment(2)
so what is it? Indy 10 or Indy 9?Currie
You can look it at ExtPascal sourcesJoyejoyful
U
22
  1. Start a new VCL Forms project
  2. Drop a TidHTTPServer component onto the Form
  3. Double-click the form to create an OnCreate() event and activate the server

    IdHTTPServer1.Active := True;

  4. Back on the form, select the HTTP Server component, and create an OnCommandGet event

In this OnCommandGet event (which is called within a child thread whenever a GET/POST occurs), handle the request, by populating the response..

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>';

Depending on your Delphi version, you may also have to add IdContext to your Uses clause

Run your demo app and then launch a browser to http://localhost and you should get a response. (Unless you have something else listening on Port 80 in which case your demo app will generate an exception)

Urinate answered 26/8, 2011 at 3:3 Comment(2)
Unfortunately, this response is about Windows exe, and not about Windows service as was asked.Starlike
Please re-read the post. Where does it talk about Windows Service?Urinate
H
8

The Indy 9 samples are still available on the IndyProject site and include an HTTPServer demo project. The Indy 10 Demo Playground does as well.

In IdHTTPServer, Get and Post commands are essentially treated the same and handled in the CommandGet event.

Hepsibah answered 20/8, 2011 at 23:55 Comment(2)
Just a note that links are now expiredRideout
Thanks! That's really nice of youRideout

© 2022 - 2024 — McMap. All rights reserved.