diff --git a/src/api/SIGCM2.Infrastructure/Http/ClientContext.cs b/src/api/SIGCM2.Infrastructure/Http/ClientContext.cs new file mode 100644 index 0000000..0ad27ba --- /dev/null +++ b/src/api/SIGCM2.Infrastructure/Http/ClientContext.cs @@ -0,0 +1,20 @@ +using Microsoft.AspNetCore.Http; +using SIGCM2.Application.Abstractions; + +namespace SIGCM2.Infrastructure.Http; + +public sealed class ClientContext : IClientContext +{ + private readonly IHttpContextAccessor _accessor; + + public ClientContext(IHttpContextAccessor accessor) + { + _accessor = accessor; + } + + public string Ip => + _accessor.HttpContext?.Connection?.RemoteIpAddress?.ToString() ?? "0.0.0.0"; + + public string? UserAgent => + _accessor.HttpContext?.Request?.Headers.UserAgent.ToString(); +}