关于前端从response header中获取其属性

最近才发现,原来从后台取值不仅仅只有其返回值,还可以从response header中获取自己需要的属性,比如服务器的时间;比如下载文件时文件的名字(but这里面是有个小水坑的)

今天主要解决的就是,为什么有的时候明明看到了服务器给反悔了值,前端缺获取不到!!!

经过和度妈妈的一番较量,度妈妈才告诉我原因:

因为W3C的xhr中做了限制。规定客户端无法获取response中的et-Cookie、Set-Cookie2这2个字段,无论是同域还是跨域请求

并且W3C 的 cors 标准对于跨域请求也做了限制,规定对于跨域请求,客户端允许获取的response header字段只限于“simple response header”和“Access-Control-Expose-Headers” ,在“Access-Control-Allow-Headers”中加了无效

"simple response header"包括的 header 字段有:Cache-Control,Content-Language,Content-Type,Expires,Last-Modified,Pragma;

"Access-Control-Expose-Headers":首先得注意是"Access-Control-Expose-Headers"进行跨域请求时响应头部中的一个字段,对于同域请求,响应头部是没有这个字段的。这个字段中列举的 header 字段就是服务器允许暴露给客户端访问的字段

例如:Access-Control-Expose-Headers: content-type, cache, ...
其中"content-type, cache, ..."为允许跨域访问的header的key,多个时用英文逗号隔开

红字部分敲黑板,划重点

虽然小编废话多,但是小编还是很用心的划重点了(哈哈哈哈哈)

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值