java消息头,Java网络编程从入门到精通:HTTP消息头字段
Java网络编程从入门到精通:HTTP消息头字段
一、通用头字段
1. Connection
这个字段只在HTTP1.1协议中存在。它决定了客户端和服务器进行了一次会话后,
服务器是否立即关闭网络连接。在客户端最直接的表现是使用read方法(readLine方法也是一样)读完客户端请求的Web资源后,是否立即返回
-1(readLine返回null)。Connection有两个值:Close和Keep-Alive.当使用Connection:Close时,
和HTTP1.0协议是一样的,当read方法读完数据时立即返回;而使用Connection:Keep-Alive时,read方法在读完数据后还要
被阻塞一段时间。直接读取数据超时时间过后,还继续往下执行。在上一篇文章中讨论的readHttpResponse(……)方法实现的第011行可以验
证Connection的作用。下面让我们来使用HTTP模拟器来做一个实验。
(1)在HTTP模拟器中输入如下的域名:
www.baidu.com
(2)HTTP模拟器中输入如下的HTTP请求信息:
GET / HTTP/1.1
Host: www.baidu.com
(3)按两下回车(输入一个空行)后,发送请求消息,并得到如图1如示的HTTP响应消息头:
图1
(4)输入y或Y后(在显示http响应头后,要立刻输入Y或y),显示响应消息的内容。在显示完内容后,大约过了10秒钟才进入"host:port>"提示符(因为在sendHttpRequest()的实现代码中的004行设置了读取数据超时)。
(5)在"host:port>"提示符下直接按回车,输入最近一次使用的域名www.baidu.com和80端口。再次输入如下的HTTP请求:
GET / HTTP/1.1
Host: www.baidu.com
Connection: close
输入完以上的HTTP请求后,重新执行第3、4步操作。最后在显示HTTP响应消息内容后,直接直入了"host:port>"提示符。除了这种方法,将请求的第一行改为GET / HTTP/1.0.这样也可以无需等待直接结束。
通过设置Connection,可以在下载Web资源(如多线程下载工具、Web浏览器等)后,立即断开网络连接,这样可以有效地降低客户机的资源消耗。
2. Date
这个Date头字段描述了请求消息和响应消息被创建的时间。这个字段值是一个HTTP-date类型,它的格式必须是GMT(格林尼治)时间,GMT时间是就是北京时间减8小时。下面是Date字段的一个例子:
Date: Tue, 15 Nov 2007 08:12:31 GMT
3. Content-Length
指定消息实�
相关文档:
tomcat启动web服务的时候总是会有8小时的时差,
琢磨了好久,最简单的办法就是
找到文件夹jdk1.6.0_07\jre\lib\zi\Etc
这里边都是一些时区文件GTM+1,GTM+2,GTM+3....
备份一份Etc
拷贝N份GTM+8文件(中国的时区是GTM+8)
把GMT+8文件名改成GTM+1,GTM+2,GTM+3....
覆盖掉原来的Etc里边的文件
重启tomcat问题解决 ......
时间动态显示
1.方法一 用TimerTask
利用java.util.Timer和java.util.TimerTask来做动态更新,毕竟每次更新可以看作是计时1秒发生一次。
代码如下:
import java.awt.Dimension;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util ......
1、FACTORY(工厂模式)
2、BUILDER(建造模式)
3、FACTORY METHOD(工厂方法模式)
4、PROTOTYPE(原始模型模式)
5、SINGLETON(单例模式)
6、ADAPTER(适配器模式)
7、BRIDGE(桥梁模式)
8、COMPOSITE(合成模式)
9、DECORATOR(装饰模式)
10、FACADE(门面模式)
11、FLYWEIGHT(享元模式) ......
一、运行class文件
执行带main方法的class文件,命令行为:
java
注意:CLASS文件名不要带文件后缀.class
例如:
java Test
如果执行的class文件是带包的,即在类文件中使用了:
package
那应该在包的基路径下执行,命令行为:
java .CLASS文件 ......
Java编程那些事儿52—方法声明
第七章 方法
方法的来源
方法的概念来源于数学上的函数,在数学中,当数据具有一定的规律时,就是用一个函数来代码该数字的规律,例如f(n)=n则代表1、2、3、……这样的一个数列。在数学上n是参数,对于确定的n值只有一个f(n)的值和它对应
方法是一组为了实现特定功� ......
java消息头,Java网络编程从入门到精通:HTTP消息头字段相关推荐
- ASP网络编程从入门到精通 下载
<ASP网络编程从入门到精通> 清华大学出版社 特点: 面向ASP零基础读者,循序渐进 全面分析ASP技术细节 用代码描述个个知识点,操作性强 通过典型模块设计,体会ASP的奥妙 通过网上 ...
- Java网络编程从入门到精通(21):HTTP消息的格式
当用户在浏览器中输入一个基于HTTP协议的URL时(以http://开头的URL),就相当于通知器按着这个URL组织生成一个HTTP请求,并交过个请求发送到服务器:同时,等待服务器的响应.无论是请求还 ...
- Java网络编程从入门到精通(14):多种多样的建立网络连接的方式
在上一篇文章中我们讨论了Socket类的基本用法,并给出的例子中使用Socket类连接服务器时使用了一种最简单的连接方式,也就是通过IP和端口号来连接服务器.而为了使连接服务器的方式更灵活,Socke ...
- Java网络编程从入门到精通(25):创建ServerSocket对象
ServerSocket类的构造方法有四种重载形式,它们的定义如下: public ServerSocket() throws IOException public ServerSocket(int ...
- Java网络编程从入门到精通 (9):使用isXxx方法判断地址类型
IP地址分为普通地址和特殊地址.在前面的文章中所使用的大多数都是普通的IP地址,在本文中将介绍如何利用InetAddress类提供的十个方法来确定一个IP地址是否是一个特殊的IP地址. 一.isAn ...
- Java网络编程从入门到精通(24):实现HTTP断点续传下载工具(附源代码)
源代码下载:download.rar 在前面的文章曾讨论了HTTP消息头的三个和断点继传有关的字段.一个是请求消息的字段Range,另两个是响应消息字段Accept-Ranges和Content-Ra ...
- Java网络编程从入门到精通(1):Internet地址概述
所有连入Internet的终端设备(包括计算机.PDA.打印机以及其他的电子设备)都有一个唯一的索引,这个索引被称为IP地址.现在Internet上的IP地址大多由四个字节组成,这种IP地址叫做IPv ...
- Java网络编程从入门到精通(3):为什么不能直接通过IP访问网站
在<创建InetAdrress对象的四个静态方法>一文中通过getAllByName得到了www.csdn.net对应的四个IP地址.从理论上说,在IE(或其他的Web浏览器,如Fire ...
- Java网络编程从入门到精通(4):DNS缓存
在通过DNS查找域名的过程中,可能会经过多台中间DNS服务器才能找到指定的域名,因此,在DNS服务器上查找域名是非常昂贵的操作.在Java中为了缓解这个问题,提供了DNS缓存.当InetAddress ...
最新文章
- 多线程:pthread_cond_wait 实现原理
- c++ map用法_Python专题——五分钟带你了解map、reduce和filter
- INamingContainer接口解决多个自定义控件ID冲突
- 数据科学和人工智能技术笔记 十一、线性回归
- Python入门基础之条件判断、循环、dict和set
- LeetCode - 不错的题目 - Longest Consecutive Sequence
- 初学windows程序设计
- 一张图慢慢转换成下一张图_如何把一张照片变成炫酷的动图?
- 如何将APK上传到谷歌应用市场
- MJKDZ PS2手柄控制OskarBot小车(二):硬件连接与通信时序
- 数据科学-Matplotlib(直方条形和散点作业)
- Python 写一个简单的FTPv2
- DSI3协议 CRM模式通信讲解
- php 验证码数字英文的,PHP 创设扭曲英文验证码
- string split 相关知识
- android7 boot root,一加7T/7TPro Root不求人,自己提取boot.img打补丁
- 浮点类型的比较,精度控制(float.h的利用 ,DBL_EPSILON)
- Java 中的 T,E,K,V, 别傻傻分不清楚!
- ubuntu上不了网的解决方法(简便)
- php渔夫,渔夫有爱——5.2钓鱼新增内容 附日常稀有鱼经验