如何在.NETCore2.1中获取API调用方详细信息?

如何在.NETCore2.1中获取API调用方详细信息?,.net,.net-core,asp.net-core-webapi,asp.net-apicontroller,.net,.net Core,Asp.net Core Webapi,Asp.net Apicontroller,在.NETCore2.1中使用我的API的用户如何获取可能的详细调用方信息 下面是我如何设计API端点的: 根据您的描述,我建议您可以使用httpcontextaccessor的httprequest上下文来获取客户端信息 如果你想在你的控制器中使用它,你应该首先注册startup.cs public void ConfigureServices(IServiceCollection services) { services.AddHttpContextAcces

在.NETCore2.1中使用我的API的用户如何获取可能的详细调用方信息

下面是我如何设计API端点的:


根据您的描述,我建议您可以使用httpcontextaccessor的httprequest上下文来获取客户端信息

如果你想在你的控制器中使用它,你应该首先注册startup.cs

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddHttpContextAccessor();

        services.AddControllers();
        services.AddSwaggerGen(c =>
        {
            c.SwaggerDoc("v1", new OpenApiInfo { Title = "CoreAPINormalIssue", Version = "v1" });
        });
    }
然后在控制器内部,应使用以下代码:

    private readonly IHttpContextAccessor _httpContextAccessor;

    public WeatherForecastController(ILogger<WeatherForecastController> logger, IHttpContextAccessor httpContextAccessor)
    {
        _logger = logger;
        _httpContextAccessor = httpContextAccessor;
    }
更多细节,你可以参考这个

// Get the client IP address.
var re =  _httpContextAccessor.HttpContext.Connection.RemoteIpAddress;