由于不支持的HTTP方法,大量请求变为4xx

时间:2018-09-17 10:35:23

标签: rest http amp-html http-options-method

我们的某些API(REST)通过HTTP方法OPTIONS收到了大量请求。虽然这些API仅支持GET方法。由于不支持OPTIONS,因此所有这些请求都将变成4xx。

观察:这些请求即将到来

  • 来自不同的客户端IP
  • 引荐人空白
  • 具有有效的用户代理。我随机检查,请求来自移动浏览器。

我如何处理这些请求? 如何确保这些请求有效? 我应该同时启用OPTIONS和GET吗?

请注意,其中某些页面具有AMP版本。这可能有关吗?

1 个答案:

答案 0 :(得分:1)

一个猜测:

许多前端(例如Angular等框架)发送所谓的“预检请求”。

  

CORS预检请求是一种CORS请求,用于检查是否   了解CORS协议。

     

这是一个OPTIONS请求,使用三个HTTP请求标头:   访问控制请求方法,访问控制请求标头和   原始标头。

     

在需要时,浏览器会自动发出预检请求。   在通常情况下,前端开发人员无需精心设计   要求自己。

https://developer.mozilla.org/en-US/docs/Glossary/Preflight_request

因此,如果您的API可以使用不同的前端是合法的,那么我想您应该接受这些标头。