Nav*_*eth 5 server-variables httpcontext request.servervariables asp.net-core
在现有的.Net网站中,可以使用服务器变量访问
HttpContext.Current.Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"]
Run Code Online (Sandbox Code Playgroud)
如何访问AspnetCore 1.0 Web应用程序中的ServerVariables?
在控制器内部调试时,this.HttpContext.Features不包含IServerVariablesFeature.
好的,我不会直接回答你的问题.我将试着说明为什么这个服务器变量不再是问题.
"HTTP_ACCEPT_LANGUAGE"是IIS和.NET用于促进ASP.NET框架与应用程序通信内容语言的服务器变量.
回到过去,浏览器不一致,并且没有Accept-Language一致地传递标题.为了填补这一空白,IIS等应用程序服务器必须通过智能地设置它,通过使用服务器上的标头,用户代理字符串和默认配置的组合来弥补与应用程序相关的内容.
我们不再需要它的原因很少,
Accept-Language标题.您只需转到您喜欢的浏览器的devtools中的Network选项卡并检查HTTP请求标头即可看到此信息.较新版本的.NET中的Http Request Message类非常清晰易读.
与在Web服务器中编写的一些复杂的不透明逻辑相比,可以简化为基于请求中的头部提供内容的简化.在所有应用程序变得越来越轻,服务器也变得越来越轻巧之后,它变得轻巧透明.为什么有人想要在网络服务器中编写一个复杂的逻辑,它不是真正的网络服务器.
因此,应用程序可以简单地检查Request Header集合.
进一步扩展,使用dotnet核心,有许多公开的功能,Web服务器的实现可以支持.细节可以在这里找到.
可以在此处找到有助于理解框架和Web服务器如何整齐地分离的更多细节
| 归档时间: |
|
| 查看次数: |
7675 次 |
| 最近记录: |