转载自:http://blog.csdn.net/sand_ant/article/details/10503579

一、request请求Header简介

Accept:--客户机支持的类型

Accept-Charset:--采用的编码类型

Accept-Encoding:--客户机支持的数据压缩格式

Accept-Language:--客户机语言环境

Host:--想访问的主机名

If-Modified-Since:--资源缓存到客户机的时间

Referer:--跳转来源(跳到此网页所点击的连接,主要用于防盗链)

User-Agent:--客户机的软件环境(操作系统版本,浏览器版本)

Cookie:--从客户机传数据

Connection:--请求完之后是否关闭连接

Date:--请求时间

Range:--说明只请求服务器资源的一部分 bytes=1000- 表示获取1000字符之后的数据

[java] view
plain
copy

  1. //获取请求资源的url
  2. URL url = new URL("http://localhost:8080/day04_web/test.txt");
  3. HttpURLConnection con = (HttpURLConnection) url.openConnection();
  4. //声明只传输6之后的资源
  5. con.setRequestProperty("Range", "bytes=6-");
  6. //资源写入文件
  7. InputStream in = con.getInputStream();
  8. FileOutputStream fo = new FileOutputStream("D:\\test.txt",true);
  9. int len =0;
  10. byte[] buff = new byte[1024];
  11. while((len=in.read(buff))>0){
  12. fo.write(buff, 0, len);
  13. }
  14. in.close();
  15. fo.close();

二、response响应Header

状态行:--处理结果,返回状态码

    //状态码

    100~199 表示请求成功,要求客户机继续提交下一次请求才能完成整个处理过程

    200~299 表示请求成功并完成整个处理过程,常用200

    300~399 为完成请求,客户机需进一步细化请求,例如请求的资源已经移动到一个新地址,

            常用302(请求其他资源,结合location使用)、304(取缓存)、307(取缓存)

    400~499 客户端的请求有错误,常见404(不存在),403(无权限)

    500~599 服务器端出现错误,常见500

    //下面两行代码可以重定向到tt.html中

[java] view
plain
copy

  1. response.setStatus(302);
  2. response.setHeader("location", "tt.html");

Server:--服务器类型

Content-Encoding:--服务器回送数据的压缩格式

Content-Lengtg:--服务器回送数据的长度

[java] view
plain
copy

  1. String data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
  2. System.out.println("===" + data.length());
  3. // 通过gzip压缩,压缩结果放到 ByteArrayOutputStream
  4. ByteArrayOutputStream out = new ByteArrayOutputStream();
  5. GZIPOutputStream gout = new GZIPOutputStream(out);
  6. gout.write(data.getBytes());
  7. gout.close();
  8. byte[] gByte = out.toByteArray();// 压缩后的数据
  9. System.out.println("==" + gByte.length);
  10. // 通知浏览器数据压缩格式
  11. response.setHeader("Content-Encoding", "gzip");
  12. response.setHeader("Content-Length", "" + gByte.length);
  13. ServletOutputStream wirte = response.getOutputStream();
  14. wirte.write(gByte);

Content-Type:--服务器回送数据的类型

[java] view
plain
copy

  1. //设置返回数据的类型
  2. response.setHeader("Content-Type", "image/x-icon");
  3. InputStream in = this.getServletContext().getResourceAsStream("/baidu.ico");
  4. ServletOutputStream write = response.getOutputStream();
  5. int len = 0;
  6. byte buff[] = new byte[1024];
  7. while((len = in.read(buff))>0){
  8. write.write(buff, 0, len);
  9. }
  10. in.close();
  11. write.flush();
  12. write.close();

Last-Modified:--当前资源的最后缓存时间

Refresh:--告诉浏览器多长时间刷新一次

[java] view
plain
copy

  1. //10秒时候跳到百度
  2. response.setHeader("refresh", "10;url='http://www.baidu.com'");
  3. String data ="Search !";
  4. response.getOutputStream().write(data.getBytes());

Content-Disposition:--告诉浏览器以下载方式打开数据(例如:attachment;filename=3.ico)

Transfer-Encoding:--告诉浏览器数据的传送格式

Set-Cookie:--

ETag:--缓存相关的

Expires:--告诉浏览器把会送的资源缓存多长时间(0、-1表示不缓存)

Catch-Control:no-catche --告诉浏览器不要缓存数据

Pragma:no-catch --告诉浏览器不要缓存数据

Http字段含义的更多相关文章

  1. R语言重要数据集分析研究——R语言数据集的字段含义

    R语言数据集的字段含义 作者:马文敏 选择一种数据结构来储存数据 将数据输入或导入到这个数据结构中 数据集的概念 数据集通常是有数据结构的一个矩形数组,行表示规则,列表示变量. 不同的行业对数据集的行 ...

  2. npm的package.json字段含义中文文档

    简介 本文档有所有package.json中必要的配置.它必须是真正的json,而不是js对象. 本文档中描述的很多行为都受npm-config(7)的影响. 默认值 npm会根据包内容设置一些默认值 ...

  3. Java序列化机制中的类版本问题 serialVersionUID的静态字段 含义

    Java序列化机制中的类版本问题 分类: [Java 基础]2014-10-31 21:13 480人阅读 评论(0) 收藏 举报   目录(?)[+]       原文地址:http://yanwu ...

  4. 屏幕字段结构SCREEN的字段含义

    在SAP屏幕中,一个字段就像.NET中的一个控件,这个字段对应一个SCREEN结构,就像控件的多个属性. SE11可以查看SCREEN结构中的字段,只是没有备注. 名称 长度 说明 NAME 屏幕字段 ...

  5. Android内存管理(5)*官方教程:Logcat内存日志各字段含义,查看当前内存快照,跟踪记录内存分配,用adb查看内存情况时各行列的含义,捕获内存快照的3种方法,如何让程序暴漏内存泄漏的方法

    Investigating Your RAM Usage In this document Interpreting Log Messages                 内存分析日志中各消息的含 ...

  6. iOS开发 Xcode中的Info.plist字段含义

    Info.plist用于向iOS提供关于app,bundle或者framework的一些重要信息.它指定了比如一个应用应该怎样启动,它如何被本地化,应用的名称,要显示的图标,还有更多.Info.pli ...

  7. mysql数据库--explain(查询表是否走索引)各个字段含义

    1.1 id列 数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. 1.2 select_type列 常见的有: ◆ simp ...

  8. Django的Models字段含义

    在model中添加字段的格式一般为:  field_name = field_type(**field_options) 一  field options(所有字段共用) 1  null   默认为F ...

  9. 关于v$librarycache的几个字段含义

    对v$librarycache中的get,pin和reload的含义: Gets: (Parse) The number of lookups for objects of the namespace ...

  10. scrapy---setting的字段含义

    # -*- coding: utf-8 -*- # Scrapy settings for lizi project # # For simplicity, this file contains on ...

随机推荐

  1. Elasticsearch 相同内容文档,不同score(评分)的奇怪问题

    原文:http://stackoverflow.com/questions/14580752/elasticsearch-gives-different-scores-for-same-documen ...

  2. Caching Data in the Architecture (C#)

    http://www.asp.net/web-forms/tutorials/data-access/caching-data/caching-data-in-the-architecture-cs ...

  3. ServiceStack.Ormlit sqlserver枚举类型映射字段类型为varchar

    请当枚举类型上面加上[Flags]特性就可以了.

  4. MongoDB Sharding 机制分析

    MongoDB Sharding 机制分析 MongoDB 是一种流行的非关系型数据库.作为一种文档型数据库,除了有无 schema 的灵活的数据结构,支持复杂.丰富的查询功能外,MongoDB 还自 ...

  5. 【转】cpu的核心数与线程数的关系

    原文地址:http://www.dn580.com/dnzs/dncs/2013/10/08/172948914.html 我们在选购电脑的时候,CPU是一个需要考虑到核心因素,因为它决定了电脑的性能 ...

  6. 20172305 2018-2019-1 《Java软件结构与数据结构》第一周学习总结

    20172305 2018-2019-1 <Java软件结构与数据结构>第一周学习总结 教材学习内容总结 本周内容主要为书第一章和第二章的内容: 第一章 软件质量: 正确性(软件达到特定需 ...

  7. 自定义View 和 ViewGroup

    一. 自定义View介绍 自定义View时, 继承View基类, 并实现其中的一些方法. (1) ~ (2) 方法与构造相关 (3) ~ (5) 方法与组件大小位置相关 (6) ~ (9) 方法与触摸 ...

  8. Java package和import语句

    Java中的package和import语句 如果你想让其他人访问你的类,你一定要把你写的类放到正确的子目录下. 在Java里,对于位于包中的类是这样管理的: Java编译器把包对应于文件系统的目录管 ...

  9. 从零讲JAVA ,给你一条 清晰地学习道路!该学什么就学什么!!

    1.计算机基础: 1.1数据机构基础: 主要学习:1.向量,链表,栈,队列和堆,词典.熟悉2.树,二叉搜索树.熟悉3.图,有向图,无向图,基本概念4.二叉搜索A,B,C类熟练,9大排序熟悉.5.树的前 ...

  10. TCP系列36—窗口管理&流控—10、linux下的异常报文系列接收

    在这篇文章中我们看一下server端在接收到异常数据系列时的处理,主要目的是通过wireshark示例对这些异常数据系列的处理有一个直观的认识,感兴趣的自行阅读相关代码和协议,这里不再进行详细介绍 在 ...