HTTP 协议
概念: HTTP 协议(Hypertext Transfer Protocol, 超文本传输协议),是一个客户端请求和回应的 标准协议,这个协议详细规定了浏览器和万维网服务器之间互相通信的规则。用户输入地址 和端口号之后就可以从服务器上取得所需要的网页信息.
客户端发送给服务器的格式叫“请求协议”;服务器发送给客户端的格式叫“响应协议”。
-
浏览器中的书写格式
http://127.0.0.1:8080/myweb/servlet1?name=test
-
HTTP 协议的主要特点
1.)支持客户/服务器模式。
2.)简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的 有 GET、POST。每种方法规定了客户与服务器联系的类型不同。由于 HTTP 协议简单,使得 HTTP 服务器的程序规模小,因而通信速度很快。
3.)灵活:HTTP 允许传输任意类型的数据对象。正在传输的类型由Content-Type 加以 标记。
4.)HTTP1.1 支持持续连接。通过这种连接,就有可能在建立一个 TCP 连接后,发送请求并得到回应,然后发送更多的请求并得到更多的回应.通过把建立和释放 TCP 连接的开销分摊到多个请求上,则对于每个请求而言,由于 TCP 而造成的相对开销被大大地降低了。而且, 还可以发送流水线请求,也就是说在发送请求 1 之后的回应到来之前就可以发送请求 2.也可以认为,一次连接发送多个请求,由客户机确认是否关闭连接,而服务器会认为这些请求分别来自不同的客户端
5.)无状态:HTTP 协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传这样可能导致每次连接传送 的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快
-
HTTP 之 URL
1.)http(超文本传输协议)是一个基于请求与响应模式的、应用层的协议,常基于 TCP 的连接方式,绝大多数的 Web 开发,都是构建在 HTTP 协议之上的Web 应用.
2.)HTTP URL (URL 是一种特殊类型的 URI,包含了用于查找某个资源的足够的信息)的格式 如下:
http://host[":"port][abs_path] -
HTTP 请求
http 请求由三部分组成,分别是:请求行、请求头、请求正文
其中请求行分为: 请求类型、请求路径、请求协议版本
“get”—>没有请求正文
-
HTTP 响应
在接收和解释请求消息后,服务器返回一个 HTTP 响应消息。HTTP 响应也是由三个部分组成,分别是:状态行、消息报头、响应正文
-
消息头
HTTP 消息由客户端到服务器的请求和服务器到客户端的响应组成。请求消息和响应消 息都是由开始行(对于请求消息,开始行就是请求行,对于响应消息,开始行就是状态行), 消息报头(可选),空行(只有 CRLF 的行),消息正文(可选)组成。
每一个报头域都是由名字+“:”+空格+值组成,消息报头域的名字是大小写无关的。
1.)请求头
Refere:该请求头指明请求从哪里来
如果是地址栏中输入地址访问的都没有该请求头 地址栏输入地址,通过请求可以看到,此时多了一个 Referer 的请求头,并且后面的值 为该请求从哪里发出,百度竞价,只能从百度来的才有效果,否则不算;通常用来做统计工作、 防盗链
2.)响应头
Refresh:自动跳转(单位是秒),可以在页面通过 meta 标签实现,也可在后台实现。
Location:Location 响应报头域用于重定向接受者到一个新的位置。Location响应报头域,常用在更换域名的时候。response.sendRedirect(“http://www.shsxt.com”);