HTTP是请求响应模式的通信协议

浏览器请求数据说明import socket
def request_hander(client_socket):
# 处理客户端请求函数
recv_data = client_socket.recv(4096)
# 判断接收函数
if not recv_data:
print("客户端断开连接")
client_socket.colse()
return
print(recv_data)#接收到请求报文数据
# 解码数据
recv_str_data = recv_data.decode()
# 响应头 响应行 响应体
response_line = "HTTP/1.1 200 ok\r\n"#(版本号 状态码
response_header = "Server: pythonServer1.0\r\n" # 具体问题具体分析 server: pythonserver1.0\r\n
response_body = "HELLOW WORLD" #响应体 就是浏览器收到的数据
# 响应报文 ———>字符串拼接
response_data = response_line + response_header + "\r\n" + "response_body"
# 发送报文给浏览器
client_socket.send(response_data.encode())
# 关闭客户端
client_socket.close()
if __name__ == '__main__':
# 创建套接字
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 设置地址重用
server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR,1)
# 绑定端口 ip
server_socket.bind(("", 8888))#地址为元组
# 监听
server_socket.listen(128)
# 客户端从服务器取一名
while True:
client_socket, client_address = server_socket.accept()
print("接受到%s的链接" % str(client_address))
request_hander(client_socket)#调用函数