Closed maxcoros closed 9 months ago
Effettivamente Content
non funziona. Prova così:
procedure TResponseLoggerFilter.Filter(
ARequestContext: TWiRLContainerResponseContext);
var
LMessage: string;
begin
LMessage := DateTimeToStr(Now) + ' - ' + TEncoding.ANSI.GetString(ARequestContext.Response.RawContent);
if ARequestContext.Request.Query <> '' then
LMessage := LMessage + '?' + ARequestContext.Request.Query;
FMainForm.Log('RES - ' + LMessage);
end;
Attenzione: togli la compressione dal demo (unit Server.Forms.Main
) altrimenti ti logga i dati compressi.
Grazie, così funziona... :-)
Negli esempi dei filtri, c'è un filtro sulla response. Per come è implementato scrive nel form le info della request, ma se cambio e cerco di visualizzare le info della response non ottengo nulla. Ad esempio Response.Content è vuota.
Sbaglio qualcosa?
Questo è il filtro originale sulla response dell'esempio 10:
procedure TResponseLoggerFilter.Filter(ARequestContext: TWiRLContainerResponseContext); var LMessage: string; begin LMessage := DateTimeToStr(Now) + ' - ' + ARequestContext.Request.Method + ' ' + ARequestContext.Request.PathInfo; if ARequestContext.Request.Query <> '' then LMessage := LMessage + '?' + ARequestContext.Request.Query; FMainForm.Log('RES - ' + LMessage); end;