Web基础与HTTP协议

(一)概念

HTTP协议中文翻译为超文本传输协议,是互联网上使用最广泛的一种网络协议,用于客户端和服务器之间的通信。它定义了客户端和服务器之间的数据传输格式和通信规则。

在Linux系统中HTTP协议使用的语言是HTML,即超文本标记语言。是一种规范,也是一种标准,它通过标记符号来标记要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容。

(二)网页文件

在HTTP中使用的网页文件为 html 文件,通常有以下两种文件

  • 以 .html 为后缀的文件
  • 以 .htm  为后缀的文件

(三)HTML网页的文件结构

(1)HTML网页的基本格式

<html>
<head><title> 标题 </title></head>
<body> 内容 </body>               
</html>

(2)head头标签中常用标签

标签 描述
<title> 定义了文档的标题
<base> 定义了页面链接标签的默认链接地址
<link> 定义了一个文档和外部资源之间的关系
<meta> 定义了 HTML 文档中的元数据
<script> 定义了客户端的脚本文件
<style> 定义了 HTML 文档的样式文件

(3)body内容标签中常用标签

标签 描述
<table> 定义一个表格
<tr> 定义了表格中的一行
<td> 定义了表格中某一行的一列
<img> 定义了一个图像
<a> 定义了一个超链接
<p> 定义了一行
<br> 定义了换行
<font> 定义了字体
<h1> 定义字体大小

(四)静态页面和动态页面

静态页面:是一个标准的 html 网页,一般的情况下都是以 .html .htm .shtml 为后缀的网页文件。静态网页是没有数据库支持的,不包含任何的应用程序,在网页当中是不可以进行交互的。

动态页面:动态网页是有数据库支持的,可以自动更新,在网页当中可以进行交互,包含使用 php JAVA Python 高级语言编写的应用程序。

(五)HTTPP协议的版本

  • HTTP/0.9

是一款已经过时的版本

  • HTTP/1.0

其只支持文本传输,支持传输http头部信息包含版本和状态码

并且只支持短连接,即在一个TCP连接中只能完成一次http请求和响应的过程

  • HTTP/1.1

其支持长连接和管道机制,即在一个TCP连接中能完成多次http请求和响应的过程

  • HTTP/2.0

其支持二进制传输

并且支持长连接和完全多路复用,即支持在一个TCP连接中可完成多次http请求和响应,且不用按照顺序一一对应

还支持网页头部压缩和服务端主动推送

  • HTTP/3.0

其是基于UDP协议来实现的,具有更高的传输速率

(六)常用的HTTP请求方法

每条 HTTP 请求报文都包含一个方法, 告诉服务器要执行什么动作

GET 发送查询资源请求,用于查询、读取或下载资源
PUT 向服务器提交数据,用于修改数据
POST 向服务器提交数据,用于添加数据
DELETE 用于删除资源
HEAD 用于查询网页头部信息和元数据

(七)HTTP响应状态码

HTTP响应状态码分为正常响应和异常响应两种;正常响应又分为正常响应和重定向响应,异常响应又分为客户端请求的错误响应好热服务端的异常响应

正常 异常
2XX 3XX 4XX 5XX
正常 重定向 客户端请求错误 服务端响应异常

常见的HTTP响应状态码:

200 一切正常
301 永久重定向
302 临时重定向
401 账号密码验证有误
403 拒绝禁止访问
404 请求文件不存在
500 服务器内部有错误
502 是错误无效的网关
503 该服务不可用
504 网关请求超时

(八)HTTP 请求流程

用户在浏览器输入URL访问时,发起HTTP请求报文,请求中包括请求行、请求头、请求体,服务器收到请求后返回响应报文,包括状态行、响应头、响应体。

(1)请求报文

请求报文包含请求行、请求头、请求体

请求行:里面包括请求方法、URL、http协议版本

请求头:请求头为请求报文添加了一些附加信息

请求体:里面包含向服务器提交的数据

(2)响应报文

响应报文包含响应行、响应头、响应体

响应行:里面包括协议版本、状态码、状态码秒数

响应头:响应头为响应报文添加了一些附加信息

响应体:里面包含服务器返回的数据

相关推荐

  1. web基础http协议

    2024-06-11 16:54:04       40 阅读
  2. Web基础http协议

    2024-06-11 16:54:04       31 阅读
  3. Web基础http协议

    2024-06-11 16:54:04       21 阅读
  4. Web基础HTTP协议

    2024-06-11 16:54:04       7 阅读
  5. web基础http协议

    2024-06-11 16:54:04       6 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-11 16:54:04       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-11 16:54:04       20 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-11 16:54:04       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-11 16:54:04       20 阅读

热门阅读

  1. 第三十篇-Ollama-TeslaP40-Ollama-Qwen2-57B等速度

    2024-06-11 16:54:04       12 阅读
  2. Comparison of manual and robotic cleaning

    2024-06-11 16:54:04       10 阅读
  3. 十种排序方法

    2024-06-11 16:54:04       8 阅读
  4. C#类库打包支持多个版本的类库

    2024-06-11 16:54:04       8 阅读
  5. 嵌入式软件测试相关分析

    2024-06-11 16:54:04       11 阅读
  6. 探索HTML5新Input类型:重塑表单交互的未来

    2024-06-11 16:54:04       9 阅读