Componente servidor HTTP puro — o mesmo mecanismo do TsgcWebSocketHTTPServer, sem suporte a WebSocket, para publicar serviços somente HTTP, como um servidor MCP.
O TsgcHTTPServer é um componente de servidor HTTP puro: ele compartilha o mesmo mecanismo subjacente do TsgcWebSocketHTTPServer (document root, sessões, keep-alive, compressão HTTP, HTTP/2, HTTP/3, TLS, autenticação, pool de threads, mecanismos IOCP/EPOLL, upload de arquivos, firewall, rate limiter...), mas nunca faz upgrade de uma conexão para o protocolo WebSocket. Não há handshake, não há frames, e nenhum dos membros exclusivos de WebSocket (Extensions, Specifications, HeartBeat, QueueOptions, OnMessage/OnBinary/OnFragmented/OnHandshake, LoadBalancer/OnLoadBalancer*, Groups) está publicado nele.
Utilize o TsgcHTTPServer quando a sua aplicação precisar apenas publicar um endpoint HTTP e você não quiser vincular nenhum código WebSocket, por exemplo, para hospedar um servidor MCP (Model Context Protocol), uma API REST/JSON, ou um servidor simples de arquivos/documentos. Se você também precisar de suporte a WebSocket na mesma porta, utilize TsgcWebSocketHTTPServer em vez disso.
Siga os passos abaixo para configurar este componente:
1. Coloque um componente TsgcHTTPServer no formulário
2. Defina a Port (o padrão é 80). Se você estiver atrás de um firewall, provavelmente precisará configurá-lo.
3. Trate OnCommandGet / OnCommandOther para responder às requisições, ou defina DocumentRoot para servir arquivos estáticos automaticamente.
AResponseInfo.ContentText := '<HTML><HEADER>TEST</HEAD><BODY>Hello!</BODY></HTML>';
OnHTTPUploadBeforeCreatePostStream: este evento é chamado depois que os cabeçalhos foram lidos e antes de o post stream ser criado.
* Em alguns casos, você pode obter um alto consumo de cpu devido a conexões não solicitadas; nesses casos, basta retornar um erro 500 ou fechar a conexão a partir de OnUnknownProtocol.
4. Crie um procedimento e defina a propriedade Active = true.