🍕Http and RESTful API
约 399 字大约 1 分钟
HttpRESTful API
2025-04-16
Http协议的请求/响应协议格式

Content-type
在HTTP协议中,Content-Type 是一个重要的头部字段,用于指示请求或响应的主体内容的媒体类型(MIME类型)。 它在请求和响应中的作用和含义有所不同,以下是两者的区别:
| 场景 | 请求(Request) | 响应(Response) |
|---|---|---|
| 作用 | 告诉服务器请求体的内容类型,便于解析。 | 告诉客户端响应体的内容类型,便于处理/展示。 |
| 发起方 | 客户端(如浏览器、API调用) | 服务器 |
模拟网页请求
socket_1.py
import socket
sock = socket.socket()
sock.bind(("127.0.0.1", 9090))
sock.listen(5)
while True:
conn, addr = sock.accept()
data = conn.recv(1024)
print("客户端发送的消息:\n", data)
conn.send(b"HTTP/1.1 ok\r\nserver:yuan\r\n\r\nhello, world")
conn.close()socket_2.py
import socket
sock = socket.socket()
sock.bind(("127.0.0.1", 9090))
sock.listen(5)
while True:
conn, addr = sock.accept()
data = conn.recv(1024)
print("客户端发送的消息:\n", data)
conn.send(b"HTTP/1.1 ok\r\ncontent-type: text/html\r\nserver:yuan\r\n\r\n<h1>Hello, world</h1>")
conn.close()RESTful接口规范
RESTful 规范是一种通用的规范,不限制语言和开发框架的使用。实际上,我们可以使用任何一个语言、任何一个框架都可以实现符合 RESTful 规范的 API 文档。
| 请求方法 | 请求地址 | 后续操作 |
|---|---|---|
| POST | /student/ | 添加学生 |
| GET | /student/ | 获取所有学生 |
| GET | /student/1 | 获取id为1的学生 |
| PUT | /student/1 | 修改id为1的学生 |
| DELETE | /student/1 | 删除id为1的学生 |
