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 上数据传输的基础协议,通过定义请求方法、状态码和报文格式,实现客户端和服务器之间的通信。

相关推荐
2601_958492553 小时前
Optimizing Engagement with Freehead Skate - HTML5 Game - Construct 3
前端·html·html5
fake_ss1983 小时前
AI时代学习全栈项目开发的新范式
java·人工智能·学习·架构·个人开发·学习方法
茉莉玫瑰花茶4 小时前
工作流的常见模式 [ 1 ]
java·服务器·前端
Upsy-Daisy4 小时前
AI Agent 项目学习笔记(二):Spring AI 与 ChatClient 主链路解析
人工智能·笔记·学习
zhangxingchao4 小时前
AI应用开发六:企业知识库
前端·人工智能·后端
山峰哥5 小时前
SQL慢查询调优实战:从全表扫描到索引覆盖的完整复盘
前端·数据库·sql·性能优化
红尘散仙5 小时前
一个 `#[uniffi::export]`,把 Rust 接进 React Native
前端·后端·rust
moshuying5 小时前
AI Coding 最大的 token 黑洞,可能根本不是 prompt
前端
红尘散仙5 小时前
一行 `#[specta::specta]`,让 Tauri IPC 有类型
前端·后端·rust