gpt4 book ai didi

c# - 为什么 HttpContext 不包含 "Host" header ?

转载 作者:太空狗 更新时间:2023-10-29 21:19:01 27 4
gpt4 key购买 nike

在我的 MVC3 应用程序中,我有一个自定义 Controller 工厂,它的 CreateController() 方法工作如下:

  public IController CreateController(RequestContext requestContext, string controllerName)
{
string host = requestContext.HttpContext.Request.Headers["Host"];
if( !host.EndsWith( SomeHardcodedString ) ) { // FAILS HERE
//some special action
}
//proceed with controller creation
}

问题是 host 有时为 null - 我看到一些请求的 NullReferenceException 和异常堆栈跟踪点正好在该行。

为什么要在此处检索到 null?我该如何处理这种情况?

最佳答案

使用string host = requestContext.HttpContext.Request.Url.Host;

关于c# - 为什么 HttpContext 不包含 "Host" header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8490004/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com