转载自: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. 手动在Windows上创建kafka环境

    一 主要内容请移步 参考文章 二 一点小问题 安装上面的参考文章完成配置,并且尝试传输消息后,我尝试去查看kafka的消息数据,目录是{logdir}/test-0/00000000000000.lo ...

  2. 共识算法 pos,Dpos

    在之前讲解了比特币中的共识算法pow(proot of work),我们先来简单的回顾一下. 新的交易将会广播给所有节点. 每个节点将都会讲新的交易收集到一个区块中. 每个节点都在为其区块收集困难的工 ...

  3. C Program基础-二维数组

    一维数组可以看作一行连续的数据,只有一个下标.C语言允许构造二维数组甚至多维数组,在实际问题中有时候常常需要用到二维数组(例如数学上的矩阵),二维数组有两个下标,以确定某个元素在数组中的位置. (一) ...

  4. codeforces 295C Greg and Friends(BFS+DP)

    One day Greg and his friends were walking in the forest. Overall there were n people walking, includ ...

  5. Graph Theory

    Description Little Q loves playing with different kinds of graphs very much. One day he thought abou ...

  6. oracle数据库中常见的操作语句(一)

    一 创建表空间 create tablespace lfdc_data logging datafile 'D:\Database\lfdc_data.dbf' size 50m autoextend ...

  7. Java 抽象类和Final关键字

    抽象类 用abstract关键字来修饰一个类时,这个类叫抽象类: 用abstract关键字来修饰一个方法时,该方法叫做抽象方法. 含有抽象方法的类必须被定义而为抽象类,抽象类必须被继承,抽象方法必须被 ...

  8. ajax的一些实用技巧

    1.尽量优先采用ajax获取html文件,然后再操作dom把数据填充到里面 在实际项目中,如果前端开发人员没有把页面给切分开,那么有如下两种办法可供选择:其一是,在各种点击事件中,用js去拼接并在拼接 ...

  9. LintCode-71.二叉树的锯齿形层次遍历

    二叉树的锯齿形层次遍历 给出一棵二叉树,返回其节点值的锯齿形层次遍历(先从左往右,下一层再从右往左,层与层之间交替进行) 样例 给出一棵二叉树 {3,9,20,#,#,15,7}, 返回其锯齿形的层次 ...

  10. LoadRunner数据库监控指标

    SQL Server 注:以下指标取自SQL Server自身提供的性能计数器. 指标名称 指标描述 指标范围 指标单位 1.SQL Server中访问方法(Access Methods)对象包含的性 ...