【问题标题】:Responding to REQUEST_METHOD = HEAD using ASP.NET MVC使用 ASP.NET MVC 响应 REQUEST_METHOD = HEAD
【发布时间】:2010-03-02 00:52:31
【问题描述】:

我有一个 ASP.NET MVC 站点,ELMAH 显示我的站点在接收到 REQUEST_METHOD = HEAD 的 HTTP 请求时出错。

如何使用 ASP.NET MVC 响应这些请求?

【问题讨论】:

    标签: asp.net-mvc


    【解决方案1】:

    使用[AcceptVerbs( HttpVerbs.Head )] 属性将方法标记为响应 HEAD 请求。您可以通过将动词 OR'ing 一起添加更多潜在方法,以便它可以响应多个请求动词。我怀疑您的方法已经标有该属性,因为我认为如果您没有任何限制,它应该响应任何请求动词。顺便说一句,我认为收到 HEAD 请求的情况非常罕见,请详细说明您收到它的原因和方式?

    【讨论】:

    • 谢谢。我的家庭控制器的索引方法是被 HEAD 请求击中的方法。它当前设置有 AcceptVerbs(HttpVerbs.GET)。我想我还需要添加一个 HttpVerbs.Head 。至于为什么我会收到请求,我希望我自己知道更多。我所知道的是,我会定期收到一封来自 ELMAH 的错误电子邮件,内容是“在控制器 'Web.Controllers.HomeController' 上找不到公共操作方法 'Index'”。详细信息显示 REQUEST_METHOD 是 HEAD。我无法识别请求来自的 IP 地址。也许是蜘蛛/爬虫?
    • 我不会添加动词,除非您的代码是发出请求的原因。可能是您想响应此请求,但我希望大多数蜘蛛/爬虫会执行完整的 GET。 FWIW,当 Google 抓取我的网站时,我看不到这些。
    • 我也是从网络蜘蛛那里得到的。真是让人头疼。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-21
    • 1970-01-01
    • 2020-01-25
    • 1970-01-01
    • 1970-01-01
    • 2016-12-26
    相关资源
    最近更新 更多