Web应用(B/S)
http是超文本传输协议(HTTP,Hyper Text Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的web文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。
Web中的资源都有一个唯一确定(其中有一系列其他的协议[如,网关,tcp]来支持)的地址来存放,这个地址称为统一资源标示符(Uniform Resource Identifiers)(或者,更准确一些,URLs)
Http是一种基于请求(B--S)和响应(S---B)的无状态协议。
请求行 - 通用信息头(系统规定) - 请求头 - 实体头(自定义) - 报文主体
Get请求没有体
典型的请求消息:
Host: download.*******.de
Accept: */*
Pragma: no-cache
Cache-Control: no-cache
User-Agent: Mozilla/4.04[en](Win95;I;Nav)
Range: bytes=554554-
GET /api/sug_short?c=25E45094A116AA0E54B05F8126669D0D&r=4914888 HTTP/1.1 请求行(首行 携带请求方式和协议)
Host: www.hao123.com
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
X-Requested-With: XMLHttpRequest
Referer: http://www.hao123.com/?tn=98444182_hao_pg
//这个头信息能直到你是从哪来的,如果是自己敲连接会没有这个头,如果是从别的网站点连接过来的,会携带那个网站的网址。
Cookie: BAIDUID=25E45094A116AA0E54B05F8126669D0D:FG=1; ft=1; hz=0; HUM=; HUN=; scrollflag=1474467075192; famous_banner=%7B%7D; tvtip_notshow=3_1; mtip=0; tnwhiteft=XzFYUBclcWb3PjfYnH6zgv99Udqsuzc_cMw1cWCkPjTdnjTknWmkxf; newloc=%7C%7C; loc2=1%7C%E5%8C%97%E4%BA%AC%7C%E5%8C%97%E4%BA%AC
Connection: keep-alive
状态行 - 通用信息头(系统规定) - 响应头 - 实体头(自定义) - 报文主体
HTTP/1.0200OK
Date:Mon,31Dec200104:25:57GMT
Server:Apache/1.3.14(Unix)
Content-type:text/html
Last-modified:Tue,17Apr200106:46:28GMT
Etag:"a030f020ac7c01:1e9f"
Content-length:39725426
Content-range:bytes55******/40279980
响应码
200:请求成功,浏览器会把响应体内容(通常是html)显示在浏览器中;
404:请求的资源没有找到,说明客户端错误的请求了不存在的资源;路径问题
500:请求资源找到了,但服务器内部出现了错误;后台代码有问题
302:所请求的页面已经临时转移至新的url,重定向。
304:未按预期修改文档。客户端有缓冲的文档并发出了一个条件性的请求(一般是提供If-Modified-Since头表示客户只想比指定日期更新的文档)。服务器告诉客户,原来缓冲的文档还可以继续使用。
Get
http://localhost:8080/a.jsp?name=111&password=8797
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://localhost:8080/servlet/jsp/login.jsp
Connection: keep-alive
没有体
Post
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://localhost:8080/servlet/jsp/login.jsp
Connection: keep-alive
(请求体)
Name=222
Pwd=123456