"""
1,导包
2,创建TCP服务器对象
3,设置ip端口重
4,绑定端口与ip
5,设置为被动模式
6,等待浏览器客户
7,接收请求报文
8,发送响应报文
9,关闭服务器
"""
import socket
def fwq(tjz,ip):#新的套接字,新的套接字ip
"""处理 7, 接收请求报文 8, 发送响应报文"""
#7, 接收请求报文
qqbw=tjz.recv(4096).decode() #请求报文
if not qqbw:
print(ip,"客户端已断开!")
tjz.close()
return
print("请求报文:\n",qqbw)
#8, 发送响应报文
xyhang="HTTP/1.1 200 huang\r\n" #响应行
xytou="Serve:HWS/2.0\r\n" #响应头
xykhang="\r\n" #响应空行
xyti="<h1>你好,python</h1>" #响应体
xybw=xyhang+xytou+xykhang+xyti
print("响应报文:\n",xybw)
tjz.send(xybw.encode("GBK"))
def main():
"""主程序"""
# 1, 导包
# 2, 创建TCP服务器对象
tcp_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# 3, 设置ip端口重
tcp_socket.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,True)
# 4, 绑定端口与ip
tcp_socket.bind(("",8888))
# 5, 设置为被动模式
tcp_socket.listen(128)
print("服务器已开启!")
while True:
# 6, 等待浏览器客户端连接
new_tcp, ip = tcp_socket.accept()
fwq(new_tcp, ip)
# 7, 接收请求报文
# 8, 发送响应报文
# 9, 关闭服务器
tcp_socket.close()
if __name__ == '__main__':
main()
09-02
7267
01-22
2075
01-24
2282