我何时应该在我的网站上响应HTTP HEAD请求

ben*_*ord 7 google-app-engine http

我的谷歌应用引擎网站在HEAD请求的主网址上收到错误,因为我不接受它们.根据,HEAD请求是"的有效性,可访问性测试超文本链接,和最近的修改"

我对HEAD请求的"正常"响应应该是什么?

我开始接受HEAD请求,以阻止错误显示在我的日志中,但仅限于主URL.

有人能指出我正确的方向吗?

Ale*_*lli 7

head像你的方法一样实现方法get,只是跳过正文的写法.您应该为每个可以链接的URL执行此操作,因为正确验证链接的行为良好的检查器应该在不需要正文时使用HEAD.

最简单的方法通常是将get功能分解为一个单独的辅助方法_foo,该方法采用一个布尔needbody参数 - get调用self._foo(True),head调用self._foo(False)._foo,如果它看到它的needbody参数是假的,一旦它生成了所有标题就可以拯救(并且必须确保它不生成一个体).

  • webapp中的另一个选项是定义一个通过调用self.get然后擦除正文来实现head的基类.当然,这是低效的,但允许您根据具体情况更有效地覆盖它. (5认同)