This commit is contained in:
Suphonchai Phoonsawat 2025-05-06 19:14:32 +07:00
parent ed0bde9780
commit fffa6bc374

View file

@ -150,6 +150,17 @@ namespace BMA.EHR.Domain.Middlewares
await _next(context); // ดำเนินการต่อไปยัง Middleware อื่น ๆ await _next(context); // ดำเนินการต่อไปยัง Middleware อื่น ๆ
stopwatch.Stop(); stopwatch.Stop();
var contentType = context.Response.ContentType;
var isFileResponse = contentType != null && (
contentType.StartsWith("application/") ||
contentType.StartsWith("image/") ||
contentType.StartsWith("audio/") ||
context.Response.Headers.ContainsKey("Content-Disposition")
);
var processTime = stopwatch.ElapsedMilliseconds; var processTime = stopwatch.ElapsedMilliseconds;
var endTime = DateTime.UtcNow; var endTime = DateTime.UtcNow;
@ -166,13 +177,30 @@ namespace BMA.EHR.Domain.Middlewares
memoryStream.Seek(0, SeekOrigin.Begin); memoryStream.Seek(0, SeekOrigin.Begin);
var responseBody = new StreamReader(memoryStream).ReadToEnd(); var responseBody = new StreamReader(memoryStream).ReadToEnd();
if (responseBody != "") if (responseBody != "")
{
if (isFileResponse)
{
responseBodyJson = "";
message = "success";
}
else
{
responseBodyJson = JsonSerializer.Serialize(JsonSerializer.Deserialize<object>(responseBody), new JsonSerializerOptions { Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping, WriteIndented = true, Converters = { new DateTimeFixConverter() } }); responseBodyJson = JsonSerializer.Serialize(JsonSerializer.Deserialize<object>(responseBody), new JsonSerializerOptions { Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping, WriteIndented = true, Converters = { new DateTimeFixConverter() } });
var json = JsonSerializer.Deserialize<JsonElement>(responseBody); var json = JsonSerializer.Deserialize<JsonElement>(responseBody);
if (json.ValueKind == JsonValueKind.Array)
{
message = "success";
}
else
{
if (json.TryGetProperty("message", out var messageElement)) if (json.TryGetProperty("message", out var messageElement))
{ {
message = messageElement.GetString(); message = messageElement.GetString();
} }
}
}
}
var logData = new var logData = new
{ {