您的位置:首页 > 理论基础 > 计算机网络

javaweb基础--HTTP协议

2016-03-27 15:05 323 查看
HTTP请求

一个完整的http请求包括一个请求行、若干请求头和实体内容。

请求行

在请求行中常用的请求方式有:GET和POST

默认情况下浏览器向服务器发送的都是get请求,用户如果想把请求方式改为post,可以通过更改表单中

的提交方式实现。

GET和POST方式的区别:

如果请求方式是GET,则可以在请求的URL地址后以?的形式带上交给服务器的数据,多个数据之间以&进行分隔。

GET方式的特点:在URL地址后附带的参数是有限制的,其数据容量通常不能超过1K。

如果请求方式为POST,则可以在请求的实体内容中向服务器发送数据。

POST方式的特点:传送的数据量无限制。

HTTP请求的细节---请求头

Accept:用于告诉服务器,客户机支持的数据类型。

Accept-Charset:用于告诉服务器,客户机采用的编码

Accept-Encoding:用于告诉服务器,客户机支持的数据压缩格式

Accept-Language:客户机的语言环境

Host:客户机通过这个头告诉服务器,想访问的主机名

If-Modified-Since:客户机通过这个头告诉服务器,资源的缓存时间

Referer:客户机通过这个头告诉服务器,它是从哪个资源来访问服务器的(防盗链)

User-Agent:客户机通过这个头告诉服务器,客户机的软件环境

Cookie:客户机通过这个头可以向服务器带一点数据

Connection:请求完是保持链接还是关闭链接

Date:当前时间值

HTTP响应

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

一个状态行、若干响应头、以及消息实体。

状态行

格式:HTTP版本号 状态码 原因叙述<CRLF>

状态码用于表示服务器对请求的处理结果,它是一个三位的十进制数。如200表示正常链接;302表示访问服务器指定的另一资源(向其他服务器);307或304表示访问缓存;404表示客户端请求有误,在服务器中无该资源;403表示服务器中有该资源,但客户端无访问权限;500表示服务器端出现错误。

HTTP请求中的常用响应头

Location:这个头配合302状态码使用,用于告诉客户机找谁

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

Content-Encoding:服务器通过这个头,告诉浏览器数据的压缩格式

Content-Length:服务器通过这个头,告诉浏览器回送的数据长度

Content-Language:服务器的语言环境

Content-Type:服务器通过这个头,告诉浏览器回送的数据类型

Last-Modified:服务器通过这个头,告诉浏览器放弃资源缓存时间

Refresh:服务器通过这个头,告诉浏览器隔多长时间刷新一次

Connent-Disposition:服务器通过这个头,告诉浏览器以下载方式打开数据

Transfer-Encoding:服务器通过这个头,告诉浏览器数据的传说格式

ETag:缓存相关的头

Expires:服务器通过这个头,告诉浏览器把回送的资源缓存多长时间,-1或0,则不缓存

Cache-Control:no-chche

Pragma:no-cache

服务器通过以上两个头,也是控制浏览器不要缓存数据

Connection:请求完是保持链接还是关闭链接

Date:当前时间值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: