asp.net-mvc - 哪个应用程序发出大量 HTTP OPTIONS 请求?

标签 asp.net-mvc iis http-options-method

我有一个 IIS/MVC.Net 应用程序,它记录了数千个未找到操作的异常。当我调查这些时,发现它们都是对仅支持 GET 的 MVC 操作的 HTTP OPTIONS 请求。

此操作允许缓存并返回缩小的 CSS 或 JS 内容。在应用程序中,可通过 <link> 访问它。和<script> <head> 中的标签。应用程序没有发出请求,我们在任何浏览器的测试中都没有看到这一点。

什么应用程序正在发出所有这些 OPTIONS 请求?

它期望得到什么返回?

最佳答案

如上所述here ,触发这些 Microsoft Office Protocol Discovery 查询的常见情况是包含托管在您的服务器上并使用 Outlook 查看的图像的邮件(MS Office Outlook,而不是Outlook Express)。

这确实会触发 OPTIONS 请求,就好像它试图检查服务器是否有某些 webdav 支持一样。我推测 MS Office 这样做是为了实现与 Sharepoint 的集成,例如。

所以我通常认为这只是一些烦人的噪音。

如果您在 MVC 应用程序 IIS 站点上托管邮件图像,也许您可​​以考虑将它们移动到专用的静态 IIS 站点上。当然,由于您无法更改以前发送的邮件,因此您可能必须维护旧图像,并且您将继续收到这些请求,直到用户停止打开旧邮件为止。否则,您可能必须调整日志记录逻辑以降低这些嘈杂请求的日志级别。

关于asp.net-mvc - 哪个应用程序发出大量 HTTP OPTIONS 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34785355/

相关文章:

asp.net-mvc - Angular2 Http 发布请求未绑定(bind)到 ASP.NET 5 Controller 的操作

asp.net-mvc - ViewModel 中的最佳实践

asp.net - 使用 Asp.Net Web Api 实现 Angular 2

angular - HTTP 错误 502.5 - ANCM 进程外启动失败

c# - 为什么我的 ajax 帖子被截断了?

javascript - OPTIONS 请求应该返回 429 吗?

jQuery文件上传: Setting headers for HTTP OPTIONS in cross browser upload

jquery - 为什么我收到 OPTIONS 请求而不是 GET 请求?

c# - 复选框状态始终作为 null 传递给 Controller

jquery - Asp.Net MVC3 具有必需的字段验证