Http协议超详细解析

导读:本篇文章讲解 Http协议超详细解析,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

1.认识url

url被称为统一资源定位符,用来表示从互联网上得到的资源位置和访问这些资源的方法。

他的表示方法一般为:

<协议>://<主机>:<端口>/<路径>

如下我们启动一个servlet程序,来看一下我们的url表示

http://localhost:8080/BuyechengServlet/login.html

大家可以看到我们采用的是我们这里采用的是 http协议

localhost:代表的是我们本机的IP地址

8080:代表我们的端口号

BuyechengServlet/login.html :代表的是我们的路径。

协议部分确定了我们的浏览器怎样向浏览器发送请求,以及服务器应该怎样反馈我们的请求,除了HTTP协议以外还有FTP协议和DNS协议等。

主机部分一般是我们的ip地址,localhost指的我们本地的IP地址,也可以用127.0.0.1来代替。当然这个部分使用的最多的还是域名的方式,比如www.baidu.com等等都属于域名。我们在计算机网络当中是通过ip地址来进行寻址的,那么就需要把域名解析成ip地址,解析的工具就是我们上课节说的DNS服务器。

端口部分一般采用的是80端口号,而我们上边所使用的的8080端口号,是tomcat默认的端口号。

端口号的存在是为了我们相关的进程能够有及时的从计算机网卡当中拿到属于自己的数据。每一个进程都有一个属于自己的端口号,且不能重复。每一个到达网卡的数据都必须带有响应的端口号,以便能够请求响应的进程。

路径部分的主要作用是起到资源定位的作用,定位相关的资源,以便于我们能够及时的处理资源。

2.超文本传输协议http

超文本传输协议(http),是关于在网络上如何传输超级文本(既HTML文档)的协议。http规定了Web(广域网)基本运作过程,以及浏览器和web服务器之间的通信细节。HTTP规定Web的基本运作过程是基于客户/服务器的通信模式,客户端主动发起HTTP请求,服务器端主动接受HTTP请求,在返回响应的http响应结果。

Http协议超详细解析

 

3.http协议的请求和相应

一个http请求一般由一下三部分组成

Http协议超详细解析

  • 请求方式、url和Http版本 

HTTP的请求方式有很多种,这里只讲解两种,既get和pos

GET:

1.通过Url传递参数,Url与参数之间用?隔开,多个参数用&隔开,也是表单的默认提交方式。

2.Get传送的数据量较小,这主要是因为收到url长度的限制

3.Get会将数据显示到URL当中不安全

4.Get一般用于直接获取数据,提高查询速度

POST:

1.post的数据在请求主体内,所以相比安全

2.post对上传数据的大小无限制

3.post适用于增删改操作

  •  请求头

Accept-Encoding: gzip, deflate, br               #浏览器所用的语言

Host: www.baidu.com                                 #远程主机

Cookie:                                                       # cookie

User-Agent:                                               #浏览器类型

  • 请求正文

wd=csdn&rsv_spt=1&rsv_iqid=0xcc9c81290004bde9&issp=1

②.HTTP响应格式

Http协议超详细解析

  •  状态

200:响应成功

400:错误的请求,客户发送的HTTP请求不正确

404:文件不存在,访问的url地址不对

405:服务器不支持客户的请求方式

500:服务器内部错误(java代码写错)

  • 响应应头

Http协议超详细解析

  • 响应正文
<html>
    <head>
        <title>qcby</title>
    </head>
    <body>
         <h1>qcby</h1>
    </body>
</html>

4.无状态的http协议

当用户访问web应用时,在许多情况下,web服务器必须能够跟踪用户的状态。比如许多用户在购物网站上购物,Web服务器为每个用户配置了虚拟的购物车。当某个用户请求将一件商品放入购物车时,web服务器必须根据发出请求的用户身份,找到客户的购物车,将商品放入其中。之所以能够完成这样的操作不是因为http协议拥有能够记录用户身份的功能。HTTP是无状态的协议。所谓的无状态,是指当浏览器与服务器之间进行基于http协议进行通信时,HTTP没有提供服务器持续跟踪特定浏览器端的规范。上诉操作之所以能完成是因为http的会话管理机制。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/115397.html

(0)
Java光头强的头像Java光头强

相关推荐

发表回复

登录后才能评论
半码博客——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!