版权声明:本文为博主原创文章,无需授权即可转载,甚至无需保留以上版权声明,转载时请务必注明作者。
https://blog.csdn.net/weixin_43453386/article/details/83792682

Response的Header属性详解

  • 一、Header属性
  • 二、Header属性分类
    • 1、通用信息头
    • 2、请求头
    • 3、响应头
    • 4、实体头
    • 5、扩展头
  • 三、Response设置Header属性
    • 1、控制浏览器禁止缓存当前文档内容
    • 2、控制浏览器过期的时间期限
    • 3、设置http响应头控制浏览器定时刷新网页(refresh)
    • 4、设置http响应头控制浏览器定时跳转到其它页面
    • 5、设置http响应头文件下载

一、Header属性

属性 备注
Access-Control-Allow-Origin 该站点可以被哪些网站进行 跨域资源共享

Access-Control-Allow-Origin: http://example.com:8080 http://foo.example.com
Access-Control-Allow-Origin:*

Accept-Ranges 服务器是否支持资源范围请求

资源范围请求:指按byte为单位,请求资源的某一段数据
例如请求一个文件的200byte—400byte的数据

Accept-Ranges:bytes 表示该资源支持byte形式资源范围请求
Accept-Ranges:none则表示不支持

Age 一个资源存在于代理中 缓存的时间,单位是秒
Allow 一个资源允许哪些HTTP方法进行请求

Allow: GET, HEAD
Allow:*

Cache-Control
Connection 连接方式

Connection:keep-alive
Connection:close

Content-Encoding 服务器对响应数据的编码方式,但这里的编码方式不同于编码字符集(GB2312,UTF-8等),而是(通常)指压缩方式

Content-Encoding:gzip

Content-Language 响应数据的自然语言

Content-Language:ZH-CN

Content-Length 响应数据的数据长度,单位是byte

Content-Length:1024

Content-Location
Content-MD5 基于base64编码的回应数据的MD5校验和

Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ==

Content-Disposition 当客户端请求的资源是一个可下载的资源(这里的“可下载”是指浏览器会弹出下载框或者下载界面)时,对这个可下载资源的描述(例如下载框中的文件名称)就是来源于该头域。

Content-Disposition: attachment; filename=”some_app.exe”

Content-Range 如果当前这个响应数据是整个资源的一部分时,是具体的哪一部分(从第几byte到第几byte)。
在请求中,客户端可以通过设定”Range”头域来通知服务器其只想请求整个资源中某一段数据,而对应的,当服务器响应这种请求,并发送某一段数据到客户端的时候,必须通过Content-Range头来告诉客户端当前的响应数据是整个资源的第几byte到第几byte。这个在资源的分段下载和续点下载应用中很有用。

Content-Range:500-900

Content-Type 服务器告诉浏览器它发送的数据属于什么文件类型,也就是响应数据的MIME类型

Content-Type: text/html; charset=utf-8,让浏览器把接收到的实体内容以HTML格式解析
Content-Type: text/plain; charset=utf-8,让浏览器把接收到的实体内容以普通文本解析

Date 响应消息发送的GMT格式日期

Date: Tue, 15 Nov 1994 08:12:31 GMT

ETag 资源的一个标识,类似于key-value pair(键值对)中的key。
ETag通常用于校验一个资源实体有没有被修改过。
在数据缓存和PUT方法更新资源时候有用处。

ETag: “737060cd8c284d8af7ad3082f209582d”

Expires 告诉客户端该响应数据会在指定的时间过期,通常用于给客户端缓存作为参考。

Expires: Thu, 01 Dec 1994 16:00:00 GMT

Last-Modified 客户端所请求的资源的最后修改时间。
Link 描述当前被请求的资源和另外一个资源的关系。这种关系被定义在RFC5988。

Link: ; rel=”alternate”

Location 用户通知客户端转跳(重定向)到另一个URL

Location: http://www.w3.org/pub/WWW/People.html

P3P Platform for Privacy Preferences Project的缩写,表示本站点遵守P3P协议(标称本站点不会违法使用用户信息)并希望收集用户信息。不过P3P目前使用并不广泛,特别国内并不重视P3P。

P3P:CP=”your_compact_policy”。

Pragma 在请求/响应链上附近的一些参数
Proxy-Authenticate 访问代理时需要使用的验证方式。

Proxy-Authenticate: Basic

Refresh 用于令客户端在指定N秒后转跳到另外一个URL。

Refresh:6,http://www.google.com.hk 6秒后转跳到google

Retry-After 用于因为某些原因(例如该资源暂时无效)通知客户端在指定时间后重新尝试请求,时间单位为秒。

Retry-After:60 一分钟后重新尝试请求该资源。

Server 服务器的名称

Server: Apache/2.4.1 (Unix)

Set-Cookie 对客户端设置cookie

Set-Cookie: UserID=JohnDoe; Max-Age=3600; Version=1

Strict-Transport-Security 用于指示客户端如何对HTTPS进行缓存(缓存多长时间)以及是否对子域生效。

Strict-Transport-Security: max-age=16070400; includeSubDomains

Trailer 当响应资源已chunked编码传输时,每个Chunked-Body尾部的额外数据。
Transfer-Encoding 响应内容的传输编码方式,通常有 chunked, deflate, gzip等。
Vary 用来指示缓存代理(例如squid)根据什么条件去缓存一个请求。

Vary: Accept-Encoding
Vary: Accept-Encoding,User-Agent
Vary: X-Some-Custom-Header,Host Vary: *

Via 告诉客户端,该回应经历了那些代理。

Via: 1.0 example1.com, 1.1 example2.com (Apache/1.1)

WWW-Authenticate 表示当前是用什么验证方式访问一个资源。

WWW-Authenticate:base

二、Header属性分类

1、通用信息头

即能用于请求消息中,也能用于响应信息中,但与被传输的实体内容没有关系的信息头,如Data,Pragma

主要: Cache-Control , Connection , Data , Pragma , Trailer , Transfer-Encoding , Upgrade

2、请求头

用于在请求消息中向服务器传递附加信息,主要包括客户机可以接受的数据类型,压缩方法,语言,以及客户计算机上保留的信息和发出该请求的超链接源地址等.

主要: Accept , Accept-Encoding , Accept-Language , Host ,

3、响应头

用于在响应消息中向客户端传递附加信息,包括服务程序的名称,要求客户端进行认证的方式,请求的资源已移动到新地址等.

主要: Location , Server , WWW-Authenticate(认证头)

4、实体头

用做实体内容的元信息,描述了实体内容的属性,包括实体信息的类型,长度,压缩方法,最后一次修改的时间和数据的有效期等.

主要: Content-Encoding , Content-Language , Content-Length , Content-Location , Content-Type

5、扩展头

主要:Refresh, Content-Disposition

三、Response设置Header属性

1、控制浏览器禁止缓存当前文档内容

response.setDateHeader("expries", -1);
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Pragma", "no-cache");

2、控制浏览器过期的时间期限

  response.setDateHeader("Expires", System.currentTimeMillis()+自己设置的时间期限);

3、设置http响应头控制浏览器定时刷新网页(refresh)

//设置refresh响应头控制浏览器每隔5秒钟刷新一次
response.setHeader("refresh", "5");

4、设置http响应头控制浏览器定时跳转到其它页面

//设置refresh响应头控制浏览器隔2秒后跳转到其它页面
response.setHeader("refresh","2;URL=otherPagename");

5、设置http响应头文件下载

response.setHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encode(fileName, "UTF-8"));

Response的Header属性详解相关推荐

  1. ASP.NET 2.0 中Cookies的Expires属性详解

    ASP.NET 2.0 中Cookies的Expires属性详解 response.cookies("cookiename").expires中expires的属性如下: resp ...

  2. jquery方法属性详解

    jquery方法属性详解! 1.jquery简介 jquery是什么,作用是什么? jquery用来简化js操作DOM元素 jquery不能用DOM的方法,DOM不能用jquery的方法 各种选择器的 ...

  3. python中文读音ndarray-numpy中的ndarray方法和属性详解

    NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推.在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量.比如说,二维数组相当于是一个一维数 ...

  4. spring MVC请求处理类注解属性详解

    spring MVC请求处理类注解属性详解

  5. Meta http-equiv属性详解

    Meta http-equiv属性详解 博客分类: Web综合 HTML浏览器IECache搜索引擎  http-equiv顾名思义,相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮 ...

  6. JavaScript Function.arguments 属性详解

    转载自   JavaScript Function.arguments 属性详解 arguments属性是正在执行的函数的内置属性,返回该函数的arguments对象.arguments对象包含了调用 ...

  7. vertical-align属性详解

    vertical-align属性详解:http://www.cnblogs.com/wcp-spring/archive/2013/03/04/2942456.html 关于vertical-alig ...

  8. border-sizing属性详解和应用

    box-sizing 用于更改用于计算元素宽度和高度的默认的 CSS 盒子模型.它有 content-box . border-box 和 inherit 三种取值. inherit 指的是从父元素继 ...

  9. Flash播放控件属性详解

    Flash 播放控件属性详解 一.属性篇 1.AlignMode(读写)  语法:AlignMode As Long  说明:对齐方式(与SAlign 属性联动).当控件的长宽比例与影片不一致且WMo ...

最新文章

  1. 回顾2018,正在改变未来游戏规则的技术
  2. Linux内存初始化(一)
  3. HDU 1233 还是畅通工程。
  4. outlook 突然发信不正常
  5. Vxworks信号量分析
  6. python所有变量更新_PYTHON:使用python变量更新MULTIPLE COLUMNS
  7. Maven拉取私服Jar包和发布jar包到maven私服
  8. pymysql安装_第八章 nova组件安装2
  9. Android Notification 手机系统横幅弹出提示框调用,横幅通知,RemoteViews使用实例
  10. 【入门5】字符串(今天刷洛谷了嘛)
  11. python uwsgi_uwsgi的多站点配置
  12. keil5 字体颜色设置 背景黑色
  13. google bert deeping watch
  14. html文字段落i排版,i排版怎么修改字体?i排版字体排版详细介绍
  15. 宠物商家必须给猫狗植入芯片,6月1日生效
  16. 504_linux内核学习___va_rounded_size宏分析
  17. 统计学离散型变量和连续型变量有什么区别?
  18. java数组初始化为 1_Java Class 1.1数组初始化
  19. 双臂二指魔方机器人的制作(一)--总体设计
  20. Kafka有多个broker的例子——重点是Replicas和lsr和Leader位置

热门文章

  1. 高效学习方法论 学习笔记
  2. windows10服务器维护,win10自动开机设置方法_网站服务器运行维护,win10
  3. C71500(BFe30-1-1)镍白铜锻件 带材
  4. Epic games 一直卡在 在我们启动更新时请稍后的解决方法
  5. vscode现在无法连接到扩展商店,请稍后再试
  6. camunda如何监控流程执行
  7. 基于分区表的物化视图快速刷新以及维护
  8. Flink入门技术分享PPT之一
  9. 在html页面上内容竖着显示
  10. Web前端技术基础实验报告二之格式化文本、段落与列表