Python:简单的HTTP服务器搭建

需求内容:在浏览器输入[ip地址:端口号],按回车,显示[hello world]

import socket

# HTTP服务器都是基于TCP的socket连接
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

s.bind(('192.168.1.107',8080))

s.listen(128) # 把socket变成一个被动监听的socket

client_socket,client_addr = s.accept() # 接收客户端的请求,接收到的结果是一个元祖,元阻里有两个元素,第0个元素是客户端的socke连接,第1个元素是客户端的ip地址和端口号t
data = client_socket.recv(1024) # tcp里使用recv获取数据,(udp里接收数据,使用的recvfrom)
print('接收到了{}客户端{}端口号发送的数据,内容是{}'.format(client_addr[0],client_addr[1],data.decode('utf8')))

# 向客户端(浏览器)发送内容前必须设置响应头
# 设置一个响应头就换一行
client_socket.send('HTTP/1.1 200 OK\n'.encode('utf8'))
client_socket.send('content-type:text/html\n'.encode('utf8'))

# 所有的响应头设置完成以后,再换行
client_socket.send('\n'.encode('utf8'))

# 向客户端(浏览器)发送hello world
client_socket.send('hello world'.encode('utf8'))

s.close()

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42161670/article/details/114741315