Http字段含义
转载自: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字符之后的数据
- //获取请求资源的url
- URL url = new URL("http://localhost:8080/day04_web/test.txt");
- HttpURLConnection con = (HttpURLConnection) url.openConnection();
- //声明只传输6之后的资源
- con.setRequestProperty("Range", "bytes=6-");
- //资源写入文件
- InputStream in = con.getInputStream();
- FileOutputStream fo = new FileOutputStream("D:\\test.txt",true);
- int len =0;
- byte[] buff = new byte[1024];
- while((len=in.read(buff))>0){
- fo.write(buff, 0, len);
- }
- in.close();
- fo.close();
二、response响应Header
状态行:--处理结果,返回状态码
//状态码
100~199 表示请求成功,要求客户机继续提交下一次请求才能完成整个处理过程
200~299 表示请求成功并完成整个处理过程,常用200
300~399 为完成请求,客户机需进一步细化请求,例如请求的资源已经移动到一个新地址,
常用302(请求其他资源,结合location使用)、304(取缓存)、307(取缓存)
400~499 客户端的请求有错误,常见404(不存在),403(无权限)
500~599 服务器端出现错误,常见500
//下面两行代码可以重定向到tt.html中
- response.setStatus(302);
- response.setHeader("location", "tt.html");
Server:--服务器类型
Content-Encoding:--服务器回送数据的压缩格式
Content-Lengtg:--服务器回送数据的长度
- String data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
- System.out.println("===" + data.length());
- // 通过gzip压缩,压缩结果放到 ByteArrayOutputStream
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- GZIPOutputStream gout = new GZIPOutputStream(out);
- gout.write(data.getBytes());
- gout.close();
- byte[] gByte = out.toByteArray();// 压缩后的数据
- System.out.println("==" + gByte.length);
- // 通知浏览器数据压缩格式
- response.setHeader("Content-Encoding", "gzip");
- response.setHeader("Content-Length", "" + gByte.length);
- ServletOutputStream wirte = response.getOutputStream();
- wirte.write(gByte);
Content-Type:--服务器回送数据的类型
- //设置返回数据的类型
- response.setHeader("Content-Type", "image/x-icon");
- InputStream in = this.getServletContext().getResourceAsStream("/baidu.ico");
- ServletOutputStream write = response.getOutputStream();
- int len = 0;
- byte buff[] = new byte[1024];
- while((len = in.read(buff))>0){
- write.write(buff, 0, len);
- }
- in.close();
- write.flush();
- write.close();
Last-Modified:--当前资源的最后缓存时间
Refresh:--告诉浏览器多长时间刷新一次
- //10秒时候跳到百度
- response.setHeader("refresh", "10;url='http://www.baidu.com'");
- String data ="Search !";
- 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字段含义的更多相关文章
- R语言重要数据集分析研究——R语言数据集的字段含义
R语言数据集的字段含义 作者:马文敏 选择一种数据结构来储存数据 将数据输入或导入到这个数据结构中 数据集的概念 数据集通常是有数据结构的一个矩形数组,行表示规则,列表示变量. 不同的行业对数据集的行 ...
- npm的package.json字段含义中文文档
简介 本文档有所有package.json中必要的配置.它必须是真正的json,而不是js对象. 本文档中描述的很多行为都受npm-config(7)的影响. 默认值 npm会根据包内容设置一些默认值 ...
- Java序列化机制中的类版本问题 serialVersionUID的静态字段 含义
Java序列化机制中的类版本问题 分类: [Java 基础]2014-10-31 21:13 480人阅读 评论(0) 收藏 举报 目录(?)[+] 原文地址:http://yanwu ...
- 屏幕字段结构SCREEN的字段含义
在SAP屏幕中,一个字段就像.NET中的一个控件,这个字段对应一个SCREEN结构,就像控件的多个属性. SE11可以查看SCREEN结构中的字段,只是没有备注. 名称 长度 说明 NAME 屏幕字段 ...
- Android内存管理(5)*官方教程:Logcat内存日志各字段含义,查看当前内存快照,跟踪记录内存分配,用adb查看内存情况时各行列的含义,捕获内存快照的3种方法,如何让程序暴漏内存泄漏的方法
Investigating Your RAM Usage In this document Interpreting Log Messages 内存分析日志中各消息的含 ...
- iOS开发 Xcode中的Info.plist字段含义
Info.plist用于向iOS提供关于app,bundle或者framework的一些重要信息.它指定了比如一个应用应该怎样启动,它如何被本地化,应用的名称,要显示的图标,还有更多.Info.pli ...
- mysql数据库--explain(查询表是否走索引)各个字段含义
1.1 id列 数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. 1.2 select_type列 常见的有: ◆ simp ...
- Django的Models字段含义
在model中添加字段的格式一般为: field_name = field_type(**field_options) 一 field options(所有字段共用) 1 null 默认为F ...
- 关于v$librarycache的几个字段含义
对v$librarycache中的get,pin和reload的含义: Gets: (Parse) The number of lookups for objects of the namespace ...
- scrapy---setting的字段含义
# -*- coding: utf-8 -*- # Scrapy settings for lizi project # # For simplicity, this file contains on ...
随机推荐
- Educational Codeforces Round 32 Problem 888C - K-Dominant Character
1) Link to the problem: http://codeforces.com/contest/888/problem/C 2) Description: You are given a ...
- 查找当前对象中的方法对象的属性叫做_event_name的方法
setattr( self, '_events', {e._event_name: e for _, e in getmembers(self, lambda x: ismethod(x) and h ...
- truffle运行特殊 无法找到module的处理方法
https://blog.csdn.net/SnWJy/article/details/80549227 错误描述: truffle项目根目录执行truffle compile时,报错'modul ...
- 11.24Daily Scrum(2)
人员 任务分配完成情况 明天任务分配 王皓南 实现网页上视频浏览的功能.研究相关的代码和功能.996 数据库测试 申开亮 实现网页上视频浏览的功能.研究相关的代码和功能.997 实现视频浏览的功能 王 ...
- 软工实践Alpha冲刺(1/10)
队名:我头发呢队 组长博客 作业博客 张杰(组长) 过去两天完成了哪些任务 查阅Python爬取音源的资料,如 Python3爬虫抓取网易云音乐热评实战 Python爬取高品质QQ音乐(2) 如何爬网 ...
- iOS- 优化与封装 APP音效的播放
1.关于音效 音效又称短音频,是一个声音文件,在应用程序中起到点缀效果,用于提升应用程序的整体用户体验. 我们手机里常见的APP几乎都少不了音效的点缀. 显示实现音效并不复杂,但对我们App很 ...
- Razor语法和Razor引擎大全
一.Razor语法 1.Razor的标识符 解释:@字符被定义为Razor服务器代码块的标识符,后面的表示是服务器代码了.web form中使用<%%>中写服务器代码一个道理.在vs工具里 ...
- js jQuery 判断跳转是手机还是电脑
<script type="text/javascript"> $(function () { var system = {}; var p = navigator.p ...
- C#控件DropDownList下拉列表默认打开
c#中的控件DropDownList要实现默打开确实不容易,之前也是想过页面上的点击之后就打开了,那直接模拟点击不就行了,试过后大失所望,根本没有效果. 于是网上找到了一个例子能实现IE浏览器下的打开 ...
- 【APS.NET Core】- 应用程序Startup类介绍
转自:https://www.cnblogs.com/stulzq/p/7845026.html Startup类配置服务和应用程序的请求管道. Startup 类 ASP.NET Core应用程序需 ...