asp.net mvc 我什么时候应该读取 servervariables?

发布于 2024-07-24 04:37:32 字数 200 浏览 12 评论 0原文

我什么时候可以从服务器变量收集信息(代码的一部分)? 我的意思是,我尝试

string temp = Request.ServerVariables.Get("HTTP_REMOTE_USER");

在控制器构造函数中调用它,但我得到一个空指针异常,而在一个操作中它工作正常。 在每个动作中调用它似乎不太干净。

When is the apropriate time (part of code) that i can gather information from servervariables? I mean, i have tried calling this

string temp = Request.ServerVariables.Get("HTTP_REMOTE_USER");

in the Controller constructor, but i am getting a nullpointerexception, while in an action it works properly. And it just doesnt seem very clean to call it in each action..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

坦然微笑 2024-07-31 04:37:32

您可以在控制器或基本控制器中定义一个属性:

protected string HttpRemoteUser
{
    get
    {
        return Request.ServerVariables.Get("HTTP_REMOTE_USER");
    }
}

然后在操作中调用此属性而不是 Request.ServerVariables.Get

You could define a property in your controller or Base Controller:

protected string HttpRemoteUser
{
    get
    {
        return Request.ServerVariables.Get("HTTP_REMOTE_USER");
    }
}

And then call this property in your actions instead of Request.ServerVariables.Get

通知家属抬走 2024-07-31 04:37:32

Request.ServerVariables.Get("HTTP_REMOTE_USER") 不会立即在 .net core mvc 中提供帮助。 例如,您应该读取服务器变量:

ip = Request.HttpContext.GetServerVariable("HTTP_X_FORWARDED_FOR");
ip = Request.HttpContext.GetServerVariable("REMOTE_ADDR");

另请参阅: 在 ASP.NET Core 中访问 HttpContext

Request.ServerVariables.Get("HTTP_REMOTE_USER") won't help in .net core mvc straight away. You should read server variables when for example:

ip = Request.HttpContext.GetServerVariable("HTTP_X_FORWARDED_FOR");
ip = Request.HttpContext.GetServerVariable("REMOTE_ADDR");

See also: Access HttpContext in ASP.NET Core

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文