Python Web 开发基础知识详解
本文介绍 Python Web 开发所需的核心基础知识,涵盖前端基础、网络编程、HTTP 协议及 WSGI 接口等。
1. Web 简介
Web(World Wide Web)即万维网。通过 URL(统一资源定位符)定位资源。客户端解析域名获取 IP,发送 HTTP 请求与服务器交互。
2. 前端基础
2.1 HTML 与 CSS
HTML 构建网页结构,CSS 负责样式渲染。两者是 Web 页面的基石。
2.2 JavaScript
实现网页交互逻辑,处理 DOM 操作与事件,增强用户体验。
3. 网络编程基础
3.1 TCP/IP 协议栈
包含四层:应用层(FTP, DNS)、传输层(TCP, UDP)、网络层(IP)、链路层。
3.2 IP 与 TCP/UDP
IP 负责寻址;TCP 提供可靠连接(三次握手),保证数据包顺序到达;UDP 无连接,速度快但不可靠。
3.3 Socket 编程
Socket 是网络通信的端点。 TCP 服务器示例:
import socket
host = "127.0.0.1"
port = 8080
web = socket.socket()
web.bind((host, port))
web.listen(5)
print("等待连接...")
while True:
conn, addr = web.accept()
data = conn.recv(1024)
conn.sendall(b"HTTP/1.1 200 OK\r\n\r\nHello World")
conn.close()
TCP 客户端示例:
import socket
s = socket.socket()
host = "127.0.0.1"
port = 8080
s.connect((host, port))
s.send("test".encode("UTF-8"))
recvData = s.recv(1024).decode("UTF-8")
print(recvData)
3.4 UDP 编程
适用于实时业务,如语音、视频。无需建立连接,直接发送数据包。
4. HTTP 协议
定义了客户端与服务器通信的规则,包括请求方法(GET, POST)、状态码(200, 404)及头部信息。
5. WSGI 接口
WSGI(Web Server Gateway Interface)是 Python Web 应用的通用标准。
5.1 CGI 与 FastCGI
CGI 每个请求创建进程,效率低。FastCGI 使用进程池优化。


