非 2xx 状态代码响应是否应包含 CORS 特定标头

2024-03-01

非 2XX 状态代码响应是否仍包含 CORS 特定标头,例如Access-Control-Allow-Origin, Access-Control-Allow-Methods, and Access-Control-Max-Age?这对客户来说还有意义吗?

例如:

➜  api git:(master) ✗ curl -i http://127.0.0.1:9000/dfas
HTTP/1.1 404 Not Found
Connection: close
Server: Node.js v6.3.1
Cache-Control: no-cache, no-store
Access-Control-Max-Age: 300
Access-Control-Allow-Origin: *
Content-Type: application/json
Content-Length: 60
Date: Thu, 11 Aug 2016 22:58:33 GMT

{"code":"ResourceNotFound","message":"/dfas does not exist"}

是的,即使有非 2xx 响应,让服务器发送 CORS 标头也是有意义的。原因是:响应中没有 CORS 标头,非 2xx 响应代码不会暴露给前端代码(通过 Fetch 或 XHR)。响应代码可能会显示在开发工具控制台中,但如果没有 CORS 标头,前端代码唯一能够以编程方式确定的是发生了错误,但无法确定错误的响应代码。

因此,如果您希望前端代码能够根据响应代码进行有用的错误处理,则即使在非 2xx 响应中,服务器也应该发送 CORS 标头。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

非 2xx 状态代码响应是否应包含 CORS 特定标头 的相关文章

  • 在 Spring 5 Webflux 中启用 CORS?

    如何启用CORS在 Spring 5 Webflux 项目中 我找不到任何合适的文档 我使用这个自定义过滤器取得了成功 import org springframework context annotation Bean import or
  • Laravel 5.2 CORS,GET 不适用于预检选项

    可怕的 CORS 错误 跨源请求被阻止 同源策略不允许读取 远程资源位于http localhost mysite api test http localhost mysite api test 原因 CORS 标头 Access Cont
  • 使用 application/json contentType 的 AJAX POST 调用收到“no 'Access-Control-Allow-Origin' header”错误

    我有下面的 Javascript 函数 每当我运行它 使用 WebView 从 Android 应用程序调用它 时 它都会作为application x www form urlencoded尽管有dataType json 属性 如果我添
  • 如何从 Kubernetes 服务背后的 HTTP 请求读取客户端 IP 地址?

    我的 Web 应用程序作为 Kubernetes pod 在 SSL 的 nginx 反向代理后面运行 代理和我的应用程序都使用 Kubernetes 服务进行负载平衡 如所述here http blog kubernetes io 201
  • CORS 与 Amazon S3 和 Cloudfront

    我有一个托管在 Heroku 上的 Rails 应用程序 它使用 CloudFront 以及托管在 S3 上的资产 它完美地显示了资产 尽管需要一些努力 我的 Cloudfront 设置 Forward Headers Whitelist
  • 内容长度标头与分块编码

    我正在尝试权衡设置的利弊Content LengthHTTP 标头与使用分块编码从我的服务器返回 可能 大文件的比较 使用持久连接需要其中之一来符合 HTTP 1 1 规范 我看到了的优点Content Length标头是 下载对话框可以显
  • Express.js在控制器中获取http方法

    我正在构建一个注册表单 本地护照作为身份验证 表单作为表单助手 因为注册只知道 GET 和 POST 我想在一个函数中完成整个处理 换句话说 我正在寻找类似的东西 exports register function req res if r
  • img 标签如何通过 cors 标头获取内容

    为什么当我使用 fetch 从禁用响应 CORS 标头的服务器加载数据时 我预期会收到错误 Failed to load http www imgworlds com wp content uploads 2015 12 18 CONTAC
  • 正确的需要授权的资源的http状态代码

    如果用户尝试访问需要用户登录的页面 则返回的正确 http 状态代码似乎存在很多混乱 那么当我显示登录页面时基本上会发送什么状态代码 我很确定我们需要在4xx range 我在这里讨论的不是 HTTP 身份验证 因此我们至少不会使用 1 个
  • 是否可以在ajax get请求中获取页面的一部分?

    我知道我们可以在向服务器发出 GET 请求时获取整个页面 但是如果我只对该页面上的一个特定 div 感兴趣 或者更准确地说对其内容感兴趣 该怎么办 这里唯一的选择是获取整个页面 例如使用 jquery find 从中获取 div 内容吗 或
  • 对过期会话进行休息调用:HTTP 401 响应导致浏览器显示登录窗口

    我编写了一个 HTML 5 应用程序 它使用 AngularJS 并与在 Tomcat 上运行的 Java REST 后端进行交互 我使用 Spring Security 来处理登录和安全性 当用户进入网站时 他将被转发到登录页面 该页面创
  • ReverseProxy取决于golang中的request.Body

    我想构建一个 http 反向代理 它检查 HTTP 主体 然后将 HTTP 请求发送到它的上游服务器 你怎么能在 Go 中做到这一点 初始尝试 如下 失败 因为 ReverseProxy 复制传入请求 修改它并发送 但正文已被读取 func
  • 删除 Safari 上的 CORS Accept-Encoding 标头

    我制作了一个 javascript 书签 它可以访问公共共享的 google drive 文件夹上的字节混洗图像 因此我制作了 ArrayBuffer CORS 在 Firefox Chrome Opera 甚至 Safari 5 some
  • Vertx HttpClient getNow 不工作

    我的 vertx HttpClient 有问题 下面的代码显示使用 vertx 和纯 java 测试 GET Vertx vertx Vertx vertx HttpClientOptions options new HttpClientO
  • 为什么使用HTTP协议时需要指定端口号?

    即使我们使用HTTP协议 为什么还需要用IP地址指定端口号 例如 http xyz 8080 这到底是什么意思 我们已经知道 在使用 HTTP 时 请求将在端口 80 上提供服务 那么为什么我们要显式指定端口呢 HTTP 的默认端口为 80
  • asp.net core http 如果没有内容类型标头,则删除 `FromBody` 忽略

    我在 http 中使用 bodyDELETE要求 我知道目前删除主体是非标准的 但是允许的 使用时出现问题HttpClient它不允许删除请求的正文 我知道我可以使用SendAsync 但我宁愿让我的 API 更加灵活 我希望这个机构是可选
  • 如何使用 Emacs 通过 HTTP 打开远程文件?

    大多数开源软件都通过某些 HTTP 服务公开其代码 我想从 Emacs 打开并浏览此类代码 但 AFAICS trapmp 只允许ssh and ftp 因此 我的第一个问题是如何打开 HTTP URL 以便在 Emacs 中进行读取 然后
  • 在 ionic 2 应用程序中使用 iframe 播放 YouTube 视频

    在 Ionic 2 应用程序中 我尝试使用 iframe 嵌入一个 YouTube 视频 代码如下所示 但是 当我导航到该页面时 我收到此错误 我找不到如何解决这个问题的好答案 XMLHttpRequest 无法加载https google
  • 服务堆栈选项 404 和 Cors Origin

    我正在执行我的 cors 请求 client http mypcname companyname 到服务堆栈 server http mypcname companyname 83 customersInformation 这就是 java
  • RestSharp RestClient的默认超时值是多少?

    任何人都知道默认超时值休息锐利 https github com restsharp 休息客户端 RestSharp 在底层使用 HttpWebRequest 它有一个默认超时 https msdn microsoft com en us

随机推荐