HTTP请求和HTTP响应

Http请求

客户端连上服务器后,向服务器请求某个web资源,称之为客户端向服务器发送了一个HTTP请求,一个完整
的HTTP请求包括:

一个请求行

描述客户端的请求方式,请求资源名称,使用的HTTP协议版本号

请求方式GET POST(默认是get可以更改表单提交方式为post)

区别主要在数据传递上

GET可以在 URL地址后 ?带上数据 以&分割 数据容量不能超过1K

POST可以在请求的实体内容中向服务器发送数据 数据量无限制

若干请求头

描述客户端请求哪台主机以及客户端的一些环境信息

常用头
Accept:用于告诉服务器,客户机支持的数据类型 text/html,image/*
Accept-Charset:客户机采用的编码 ISO-8859-1
Accept-Encoding:客户机支持的数据压缩格式 gzip,compress
Accept-Language:客户机的语言环境 en-us,zh-cn 语言代码-国家代码
Host:客户机想访问的主机名 www.xxx.org:80
If-Modified-Since:客户机告诉服务器资源的缓存时间 Tue,11,Jul 2000 18:08:16 GMT

Referer:客户机告诉服务器自己是从哪个资源来访问服务器(防盗链) http://www.xxx.org/index.jsp

User-Agent:客户机告诉服务器自己的软件环境 浏览器版本操作系统内核

Cookie:客户机向服务器带数据

Connection:请求结束是关闭还是保持连接  close/Keep-Alive

Date:当前时间值

一个空行
实体内容



HTTP响应

一个HTTP响应代表服务器向客户端回送的数据,包括:

一个状态行

用于描述服务器对请求的处理结果

HTTP/1.1 200 OK
200状态码 表示服务器对请求的处理结果 三位十进制数
100-199 成功接收 要求客户端提交下一次请求才能完成整个处理过程(不常用)
200-299 成功接收 并已完成整个处理过程 常用200
300-399 为完成请求 客户需进一步细化请求 例如请求的资源已经移动到一个新地址 常用302(去找别人location),307和304(去拿缓存)
400-499 客户端的请求有错误 常用 404(服务器没有请求资源) 403(权限不够拒绝)
500-599 服务器端出现错误 常用500

若干消息头

用于描述服务器的基本信息以及数据的描述,服务器通过这些数据的描述信息,可以通知客户端如何处理等一会它回送的数据(控制客户端的行为)

Location:配合320状态码使用告诉客户找谁(用location和302实现请求重定向)

http://www.xxx.org/index.jsp

Server:服务器通过这个头告诉浏览器服务器的类型  apache tomcat

Content-Encoding: 数据的压缩格式 gzip

Content-Length:告诉浏览器回送数据的长度 80

Content-Language:回送的语言环境 zh-cn

Content-Type:回送数据的类型 text/html charset=GB2312

Last-Modified:服务器通过这个头告诉浏览器当前资源的缓存时间 Tue,11,Jul 2000 18:08:16 GMT

Refresh:告诉浏览器多长时间刷新一次 3,url=http://www.xxx.org

Content-Disposition:告诉浏览器以下载方式打开数据 attachment;filename=1.jpg

Transfer-Ecoding:告诉浏览器数据的传送格式 chunked块传输

ETag:缓存相关的头 可以做到实时更新

Expires:告诉浏览器把回送的资源缓存多长时间 -1或0不缓存

Cache-Controll:no-cache 不缓存

Pragma:no-cache 不缓存(适应不同浏览器)

Connection:请求结束是关闭还是保持连接 close/Keep-Alive

Date:当前时间值

一个空行

实体内容 代表服务器向客户端回送的数据


Http响应头(range头实现断点下载)

HTTP请求头字段

Range头指示服务器只传输一部分Web资源,可以用来实现断点续传功能,三种格式:

Range: bytes=1000-2000 传输范围从1000-2000字节

Range: bytes=1000- 传输Web资源中第1000个字节以后的所有内容

Range: bytes=1000 传输最后1000个字节

HTTP响应消息头字段

Accept-Ranges: 这个字段说明Web服务器是否支持Range 支持返回bytes不支持返回none

Content-Range: 指定了返回的Web资源的字节范围 如Content-Range:1000-3000/5000


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值