首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在AspnetCore 1.0中访问ServerVariables

如何在AspnetCore 1.0中访问ServerVariables
EN

Stack Overflow用户
提问于 2016-07-18 14:08:25
回答 2查看 10.9K关注 0票数 6

在现有的.Net网站中,使用访问服务器变量

代码语言:javascript
运行
复制
HttpContext.Current.Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"]

如何在AspnetCore 1.0Web应用程序中访问ServerVariables?

在控制器内部调试时,this.HttpContext.Features不包含IServerVariablesFeature

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-18 19:49:47

好吧,我不会直接回答你的问题。我将尝试说明为什么这个服务器变量不再是问题。

"HTTP_ACCEPT_LANGUAGE“是一个服务器变量,IIS和.NET使用它在ASP.NET框架上促进内容语言与应用程序的通信。

在过去,浏览器并不一致,并且不能一致地传递Accept-Language头。为了填补这一空白,应用程序服务器(如IIS )必须通过智能地设置它来弥补它,通过使用标头、用户代理字符串和服务器上的默认配置的组合来组成与应用程序相关的内容。

我们不再想要它的原因很少,

  1. 几乎所有的浏览器都会设置Accept-Language头。你只需在你最喜欢的浏览器的devtools中打开网络选项卡,检查HTTP请求报头,就可以看到这一点。

较新版本的.NET中的

  1. Http请求消息类非常清晰易读。

Request Message in windows .NET framework

与编写在web服务器中的一些复杂的不透明逻辑相比,HttpRequest class in dotnet core

  • It可以简化为基于请求中的报头提供内容。在所有的应用程序变得越来越轻便,服务器也变得越来越轻巧之后,轻量级和透明性是值得的。为什么有人想要在web服务器中编写一个复杂的逻辑,而这并不是真正的web服务器。

因此,应用程序可以简单地检查请求标头集合。

在此基础上进一步扩展,使用dotnet核心,暴露了许多功能,web服务器的实现可以支持这些功能。详情可以在here上找到。

更多细节将有助于理解框架和can服务器是如何巧妙地解耦的,请访问found here

票数 8
EN

Stack Overflow用户

发布于 2016-07-18 22:10:46

你不能,因为应用程序现在运行在进程之外。然而,正如humblelistener指出的那样,这些信息中的大部分都可以在其他地方获得。Accept语言是你唯一需要的语言吗?

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38429604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档