浅析Java web程序之客户端和服务器端交互原理
2009-09-16 00:00:00 来源:WEB开发网在Java底层代码中是这样实现的,只不过它们已经帮我们做了。
Java代码
Socket socket = new Socket("cuishen.javaeye.com",80);
InputStream in = socket.getInputStream();
OutputStream out = socket.getOutputStream();
ii. 客户端发送HTTP请求报文(request)
一旦建立了TCP连接,Web浏览器就会向Web服务器发送请求命令,是一个ASCII文本请求行,后跟0个或多个HTTP头标,一个空行和实现请求的任意数据。
即报文分四个部分:请求行,请求头标,空行和请求数据
1)请求行
请求行由三个标记组成:请求方法、请求URL和HTTP版本,中间用空格分开
例如: GET cuishen.javaeye.com/blog/242842 HTTP/1.1
HTTP规范定义了8种可能的请求方法:(最常见的就是 GET 和 POST 两种方法)
GET -- 检索URI中标识资源的一个简单请求
HEAD -- 与GET方法相同,服务器只返回状态行和头标,并不返回请求文档
POST -- 服务器接受被写入客户端输出流中的数据的请求
PUT -- 服务器保存请求数据作为指定URI新内容的请求
DELETE -- 服务器删除URI中命名的资源的请求
OPTIONS -- 关于服务器支持的请求方法信息的请求
TRACE -- Web服务器反馈Http请求和其头标的请求
CONNECT -- 已文档化但当前未实现的一个方法,预留做隧道处理
2)请求头标
请求头标:由key :value 健值组成,每行一对。请求头标用来通知服务器有关客户端的功能和标识。
HOST -- 请求的哪一个服务器端地址,主地址,比如:我的技术blog:cuishen.javaeye.com
User-Agent -- 用户即客户端可以使用的浏览器 ,如: Mozilla/4.0
更多精彩
赞助商链接