TsgcWebSocketServer_HTTPAPI | Enviar respuesta de texto
Utilice el evento OnHTTPRequest para gestionar las solicitudes HTTP.
La clase THttpServerRequest contiene los datos de la solicitud HTTP.
- Document: el Documento al que el par intenta acceder.
- Method: el método HTTP ('GET', 'POST', etc.)
- Headers: las cabeceras de la solicitud HTTP.
- AcceptEncoding: variable de codificación aceptada, ejemplo: "gzip, deflate, br".
- ContentType: ejemplo: "text/html"
- Content: contenido de la solicitud si existe.
- QueryParams: los parámetros de consulta.
- Cookies: las cookies si existen.
- ContentLength: tamaño del contenido.
- AuthExists, AuthUsername, AuthPassword: datos de la solicitud de autenticación.
- Stream: si la solicitud http tiene un cuerpo, este es el flujo del cuerpo.
La clase THttpServerResponse contiene los datos de la respuesta HTTP.
- ContentText: es la respuesta en texto.
- ContentType: ejemplo: "text/html". Si desea codificar el ContentText con UTF8, establezca charset='utf-8'. Ejemplo: text/html; charset=utf-8
- CustomHeaders: si necesita enviar sus propios encabezados, utilice esta variable
- AuthRealm: si el servidor requiere autenticación, establezca esta variable.
- ResponseNo: el número de respuesta HTTP. Ejemplo: 200 significa que la respuesta es exitosa.
- ContentStream: si la respuesta contiene un flujo, establézcalo aquí (no libere el flujo, se liberará automáticamente).
- FileName: si la respuesta es un nombre de archivo, establezca aquí la ruta completa al archivo.
- Date, Expires, LastModified: variables de fecha y hora de la respuesta.
- CacheControl: permite personalizar el comportamiento de la caché.
Ejemplo: si el servidor recibe una solicitud GET para el documento "/test.html", envíe una respuesta OK; de lo contrario, envíe un 404 si es una solicitud GET para otro documento, o el error 500 si es un método diferente.
procedure OnHTTPRequest(aConnection: TsgcWSConnection_HTTPAPI;
const aRequestInfo: THttpServerRequest;
var aResponseInfo: THttpServerResponse);
begin
if aRequestInfo.Method = 'GET' then
begin
if aRequestInfo.Document = '/test.html' then
begin
aResponseInfo.ResponseNo := 200;
aResponseInfo.ContentText := 'OK';
aResponseInfo.ContentType := 'text/html; charset=UTF-8';
end
else
aResponseInfo.ResponseNo := 404;
end
else
aResponseInfo.ResponseNo := 500;
end;