一.什么是http协议
对浏览器客户端 和 服务器端 之间数据传输的格式规范
二.http协议版本
- http1.0:当前浏览器客户端与服务器建立连接之后,只能发送一次请求,一次请求之后连接关闭。
-
http1.1:当前浏览器客户端与服务器建立连接之后,可以在一次连接中发送多次请求。
注意:基本上都使用http1.1
三.http请求
1.)请求资源
- **URL: ** 统一资源定位符。http ://localhost:8080/day09/index.html。只能定位互联网资源。是URI的子集。
- URI: 统一资源标记符。/day09/hello。用于标记任何资源。可以是本地文件系统,局域网的资源(//192.168.14.10/myweb/index.html),可以是互联网。
2.)请求方式
常见的请求方式: GET 、 POST、 HEAD、 TRACE、 PUT、 CONNECT 、DELETE
常用的请求方式: GET 和 POST
常用于表单提交:
<from action="提交地方" method="GET/POST">//表单提交方式
</from>
3.)测试GET与POST区别
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>MyHtml.html</title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
</head>
<body>
<h1>GET提交</h1>
<form action="MyHtml.html" method="GET">
用户名:<input type="text" name="name"/><br>
密码:<input type="password" name="password"/>
<input type="submit" value="提交"/>
</form>
————————————————————————————————————————————————————————————————
<h1>POST提交</h1>
<form action="MyHtml.html" method="POST">
用户名:<input type="text" name="name"/><br>
密码:<input type="password" name="password"/>
<input type="submit" value="提交"/>
</form>
</body>
</html>
GET提交
name:namePOst
password:123456
1.地址栏(URI)会跟上参数数据。以?开头,多个参数之间以&分割。
2.HTTP协议规范没有对GET提交限制大小,但是由于浏览器对URL的限制,和服务器的最大处理能力导致提交的大小有限制。
3.GET方式不适合提交敏感密码。
4.注意: 浏览器直接访问的请求,默认提交方式是GET方式.
POST提交
name:nameGet
password:123
1.参数不会跟着URI后面。参数而是跟在请求的实体内容中。没有?开头,多个参数之间以&分割。
2.POST提交的参数数据没有限制。
3.POST方式提交敏感数据。
3.)请求头解析
Accept: text/html,image/* -- 浏览器接受的数据类型
Accept-Charset: ISO-8859-1 -- 浏览器接受的编码格式
Accept-Encoding: gzip,compress --浏览器接受的数据压缩格式
Accept-Language: en-us,zh- --浏览器接受的语言
Host: www.it315.org:80 --(必须的)当前请求访问的目标地址(主机:端口)
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT --浏览器最后的缓存时间
Referer: http ://www.it315.org/index.jsp -- 当前请求来自于哪里
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0) --浏览器类型
Cookie:name=eric -- 浏览器保存的cookie信息
Connection: close/Keep-Alive -- 浏览器跟服务器连接状态。close: 连接关闭 keep-alive:保存连接。
Date: Tue, 11 Jul 2000 18:23:51 GMT -- 请求发出的时间
4.)实体内容
GET提交:会显示在地址栏,以?开头,多个参数之间以&分割。
POST提交:会放在试实体内容中。