Web开发基础学习——HTTP的理解

Web开发基础学习系列文章目录

第一章 基础知识学习之HTTP的理解


文章目录


前言

HTTP(HyperText Transfer Protocol,超文本传输协议)是用于在 Web 上传输数据的协议。它是客户端(如浏览器)和服务器之间通信的基础。HTTP 定义了一组请求方法和状态码,用于表示不同的操作和响应。


一、HTTP 请求方法

  • GET:请求从服务器获取资源。
  • POST:向服务器提交数据。
  • PUT:更新服务器上的资源。
  • DELETE:删除服务器上的资源。
  • HEAD:类似于 GET 请求,但只请求响应头。
  • OPTIONS:请求服务器支持的通信选项。
  • PATCH:部分更新服务器上的资源。

POST 和 PUT什么区别?

  • POST:用于创建新资源。
  • PUT:用于更新现有资源。

二、HTTP 状态码

  • 1xx(信息性状态码):请求已接收,继续处理。
  • 2xx(成功状态码):请求已成功处理。
    • 200 OK:请求成功。
    • 201 Created:资源已成功创建。
  • 3xx(重定向状态码):需要进一步操作以完成请求。
    • 301 Moved Permanently:资源已永久移动。
    • 302 Found:资源临时移动。
  • 4xx(客户端错误状态码):请求包含错误或无法处理。
    • 400 Bad Request:请求无效。
    • 401 Unauthorized:未授权。
    • 403 Forbidden:禁止访问。
    • 404 Not Found:资源未找到。
      5xx(服务器错误状态码):服务器在处理请求时发生错误。
    • 500 Internal Server Error:服务器内部错误。
    • 502 Bad Gateway:网关错误。
    • 503 Service Unavailable:服务不可用。

三、HTTP 报文

  • 请求报文:包含请求行、请求头和请求体。
    • 请求行:请求方法、URL 和 HTTP 版本。
    • 请求头:元数据(如 Content-Type、User-Agent)。
    • 请求体:可选,包含提交的数据(如表单数据)。
      响应报文:包含状态行、响应头和响应体。
    • 状态行:HTTP 版本、状态码和状态描述。
    • 响应头:元数据(如 Content-Type、Set-Cookie)。
    • 响应体:实际返回的数据(如 HTML、JSON)。

四、示例

  • HTTP 请求
html 复制代码
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Accept: text/html
  • HTTP 响应
html 复制代码
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 123

<html>
<body>
<h1>Hello, World!</h1>
</body>
</html>

总结

HTTP 是 Web 上数据传输的基础协议,通过定义请求方法、状态码和报文格式,实现客户端和服务器之间的通信。

相关推荐
牧羊狼的狼1 小时前
React 中的 HOC 和 Hooks
前端·javascript·react.js·hooks·高阶组件·hoc
知识分享小能手2 小时前
React学习教程,从入门到精通, React 属性(Props)语法知识点与案例详解(14)
前端·javascript·vue.js·学习·react.js·vue·react
魔云连洲2 小时前
深入解析:Vue与React的异步批处理更新机制
前端·vue.js·react.js
mCell3 小时前
JavaScript 的多线程能力:Worker
前端·javascript·浏览器
超级无敌攻城狮4 小时前
3 分钟学会!波浪文字动画超详细教程,从 0 到 1 实现「思考中 / 加载中」高级效果
前端
茯苓gao5 小时前
STM32G4 速度环开环,电流环闭环 IF模式建模
笔记·stm32·单片机·嵌入式硬件·学习
excel5 小时前
用 TensorFlow.js Node 实现猫图像识别(教学版逐步分解)
前端
是誰萆微了承諾5 小时前
【golang学习笔记 gin 】1.2 redis 的使用
笔记·学习·golang
gnip6 小时前
JavaScript事件流
前端·javascript
赵得C6 小时前
【前端技巧】Element Table 列标题如何优雅添加 Tooltip 提示?
前端·elementui·vue·table组件