TsgcWebSocketHTTPServer | Errore 404 senza corpo della risposta

Per impostazione predefinita, la libreria Indy aggiunge un corpo al contenuto delle risposte HTTP se non è assegnato ContentText o ContentStream. Se si desidera restituire un corpo di risposta vuoto (per un errore 404 o simile), è possibile utilizzare il seguente approccio.

 

Crei un nuovo TStringStream senza contenuto e lo assegni alla proprietà ContentStream della Response HTTP. In questo modo la risposta HTTP verrà inviata senza i tag HTML predefiniti.

 

Esempio

 


procedure OnCommandGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; 
  AResponseInfo: TIdHTTPResponseInfo);
begin
  AResponseInfo.ContentStream := TStringStream.Create('');
  AResponseInfo.ContentType := 'text/html';
  AResponseInfo.ResponseNo := 404;
end;