mirror of
https://github.com/C9Glax/tranga.git
synced 2025-04-13 03:43:17 +02:00
35 lines
774 B
C#
35 lines
774 B
C#
namespace API;
|
|
|
|
public interface IHttpRequestTimeFeature
|
|
{
|
|
DateTime RequestTime { get; }
|
|
}
|
|
|
|
public class HttpRequestTimeFeature : IHttpRequestTimeFeature
|
|
{
|
|
public DateTime RequestTime { get; }
|
|
|
|
public HttpRequestTimeFeature()
|
|
{
|
|
RequestTime = DateTime.Now;
|
|
}
|
|
}
|
|
|
|
public class RequestTimeMiddleware
|
|
{
|
|
private readonly RequestDelegate _next;
|
|
|
|
public RequestTimeMiddleware(RequestDelegate next)
|
|
{
|
|
_next = next;
|
|
}
|
|
|
|
public Task InvokeAsync(HttpContext context)
|
|
{
|
|
var httpRequestTimeFeature = new HttpRequestTimeFeature();
|
|
context.Features.Set<IHttpRequestTimeFeature>(httpRequestTimeFeature);
|
|
|
|
// Call the next delegate/middleware in the pipeline
|
|
return this._next(context);
|
|
}
|
|
} |