我正在尝试在我的WebAPI项目中启用CORS支持,如果启用了匿名身份验证,那么一切正常,但是使用Windows Auth +禁用匿名身份验证,发送的OPTIONS请求始终返回401未经授权的响应。要求它的站点位于DOMAIN上,因此应该可以拨打电话,在不禁用Windows身份验证的情况下,有什么方法可以解决此问题?

最佳答案

您只能允许匿名用户使用OPTIONS动词。

<system.web>
  <authentication mode="Windows" />
    <authorization>
      <allow verbs="OPTIONS" users="*"/>
      <deny users="?" />
  </authorization>
</system.web>

根据W3C规范,浏览器从CORS预检中排除了用户凭据:https://dvcs.w3.org/hg/cors/raw-file/tip/Overview.html#preflight-request

关于iis-7.5 - 启用Windows身份验证的IIS中针对CORS请求的401响应,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51296702/

10-11 22:50
查看更多