Access-Control-Expose-Headers 响应报头、跨域 公开响应头

Access-Control-Expose-Headers 响应报头、跨域 公开响应头

问题现象: 前端无法获取响应头 Response Header 原因


问题原因:跨域问题 启用跨域请求(CORS)


前后端分离的项目,前端地址与后端地址不同,出现了跨域问题,因此 前端人员拿取不到后端返回的Response.headers.自定义的响应头 “X-Check-Submit-Repeat”(只能拿到默认的标头)

这里是引用

在使用CORS方式跨域时,浏览器只会返回 默认的头部 Header,认情况下可用的响应头包括:

  • Cache-Control
  • Content-Language
  • Content-Type
  • Expires
  • Last-Modified
  • Pragma

CORS规范将这些头称为 简单响应头 。要使用其他头可用于应用,请调用 WithExposedHeaders(String[]) 方法,设置 公开 (后端代码可看下方链接)。
这样响应头就会显示 A***ess-Control-Expose-Headers :…自定义头…
接着前端就能拿到里面的自定义响应头了。


A***ess-Control-Expose-Headers响应报头


简介

A***ess-Control-Expose-Headers 响应报头 指示哪些报头可以 公开 为通过列出他们的名字的响应的一部分
默认情况下,只显示6个简单的响应头,在上方也有介绍。
如果你想要客户端能够访问其他的请求头,则必须使用A***ess-Control-Expose-Headers 列出他们。

语法

A***ess-Control-Expose-Headers: , , …

参数说明
  • header-name
    暴露的头部列表,其中包含零个或多个头部名称,而不是资源可能使用并可能暴露的简单响应头(Response Header)

示例

  • 要公开一个非简单的自定义响应头,你可以指定(x开头是命名规范,下方有链接 有时间可以看看)
A***ess-Control-Expose-Headers: X-Check-Submit-Repeat
  • 要公开多个自定义标题,你可以用逗号分隔
java">A***ess-Control-Expose-Headers: X-Check-Submit-RepeatX-Order




推荐内容


  • angular无法获取响应头HttpContext.Response.Headers / 公开标头
  • 公开标头 —— 后端代码

  • CORS跨域、公开标头
    微软官方文档 —— 在 ASP.*** Core 中启用跨源请求 (CORS)

  • HttpContext Response/Request.Headers 标头命名规范
    命名规范 —— 自定专用消息头可通过’X-’ 前缀来添加





转载请说明出处内容投诉
CSS教程_站长资源网 » Access-Control-Expose-Headers 响应报头、跨域 公开响应头

发表评论

欢迎 访客 发表评论

一个令你着迷的主题!

查看演示 官网购买