http基础一

1. HTTP是什么?

HTTP(超文本传输协议,HyperText Transfer Protocol)是一种用于从万维网服务器传输超文本到本地浏览器的协议。它是无状态的客户端-服务器协议,通常在Web浏览器和Web服务器之间用于传输网页、图片、视频等资源。HTTP是应用层协议,工作在OSI模型的第7层。

2. 网络状态码(HTTP状态码)

HTTP状态码是服务器响应客户端请求时返回的3位数字,用于表示响应的处理结果。常见的HTTP状态码包括:

  • 1xx(信息性状态码) :请求已被接受,继续处理。
    • 100 Continue
    • 101 Switching Protocols
  • 2xx(成功状态码) :表示请求已被成功处理。
    • 200 OK:请求成功并返回数据。
    • 201 Created:请求成功并已创建资源。
    • 204 No Content:请求成功,但无返回内容。
  • 3xx(重定向状态码) :表示需要客户端进一步操作才能完成请求。
    • 301 Moved Permanently:资源永久迁移到新位置。
    • 302 Found:资源临时迁移。
    • 304 Not Modified:资源未修改,客户端可以使用缓存。
  • 4xx(客户端错误状态码) :表示客户端的请求有错误,服务器无法处理。
    • 400 Bad Request:请求无效。
    • 401 Unauthorized:未经授权。
    • 403 Forbidden:禁止访问。
    • 404 Not Found:请求的资源未找到。
  • 5xx(服务器错误状态码) :表示服务器在处理请求时发生了错误。
    • 500 Internal Server Error:服务器内部错误。
    • 502 Bad Gateway:无效的网关。
    • 503 Service Unavailable:服务不可用。

3. GET和POST的区别

  • GET :
    • 用于获取数据。
    • 请求参数通过URL传递,参数会显示在浏览器地址栏中。
    • 一般用于请求数据,不对服务器数据进行修改。
    • 有长度限制(URL长度限制,通常在2K以内)。
    • 数据传输不安全,因为参数暴露在URL中。
    • 是幂等的,多次相同请求结果相同。
  • POST :
    • 用于提交数据。
    • 请求参数通过请求体传递,不显示在浏览器地址栏中。
    • 一般用于向服务器提交数据,可能会改变服务器数据(例如,创建、更新资源)。
    • 没有长度限制。
    • 数据传输相对较安全,但仍然可能会暴露在请求中(建议通过HTTPS加密)。
    • 不是幂等的,重复提交可能会有不同结果。
相关推荐
LK_071 小时前
【FastAPI】基础篇 01|开始之前:API、HTTP 与 FastAPI 到底是什么
网络协议·http·fastapi
say_fall1 小时前
【Linux网络编程】计算机网络基础:局域网与广域网、OSI七层模型与TCP/IP五层模型、封装解包与MAC/IP地址、端口号与socket编程接口
linux·网络·tcp/ip·计算机网络·信息与通信
阿星_1 小时前
pydio登陆不了分析问题
网络协议·http·https
Joy T2 小时前
Gzip 压缩原理与实践:HTTP 响应压缩、性能收益与工程配置
网络·网络协议·http
叼烟扛炮2 小时前
Linux 学习笔记(五十四):内网穿透实战——用 frp 让外网访问你的私人电脑
linux·服务器·网络·笔记·学习
CodeYp20193 小时前
第3讲:网络命令
linux·网络·命令
承渊政道20 小时前
Linux网络学习【Reactor反应堆模式】
linux·网络·学习·ubuntu·reactor
爱和冰阔落1 天前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
严肃小白兔1 天前
Cloudflare 更新 API Token 管理:从最小权限到自动化凭据安全
网络·安全·自动化
Linux-lucky2 天前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu