Python网络编程基础与实践
1. 网络基础与HTTP协议
在网络编程中,socket编程是基础。 select
函数可用于监听socket列表,判断其是否可读、可写或出现错误。以下是一个简单示例:
import select
import socket
App_Socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
App_Socket.bind("", 8888)
App_Socket.listen(5)
while 1:
readable_sockets = [App_Socket]
writable_sockets = []
r, w, err = select.select(readable_sockets, writable_sockets, [], 0)
if r:
client, address = service.accept()
client.send("data")
client.close()
HTTP(超文本传输协议)是用于万维网应用的简单文本协议,Web服务器和浏览器都实现了该协议。其工作流程如下:
1. 客户端打开连接,向Web服务器发送请求头。请求包含请求方法(如GET、POST、PUT等)和要打开的文件名等信息。
2. 服务器解析请求并返回响应,响应包含HTTP协议版本号以及返回文档的相关信息,如cookie、文档类型和大小等。