from socket import *
def handle_client(client_socket):
recv_data = client_socket.recv(1024).decode("utf-8")
request_header_lines = recv_data.splitlines()
for line in request_header_lines:
print(line)
response_headers = "HTTP/1.1 200 OK\r\n"
response_headers += "\r\n"
response_body = "hello world"
response = response_headers + response_body
client_socket.send(response.encode("utf-8"))
client_socket.close()
def main():
server_socket = socket(AF_INET,SOCK_STREAM)
server_socket.setsockopt(SOL_SOCKET,SO_REUSEADDR,1)
server_socket.bind(("",7788))
server_socket.listen(128)
while True:
client_socket,client_addr = server_socket.accept()
handle_client(client_socket)
if __name__ == "__main__":
main()
HTTP GET请求的格式的换行符是"\r\n",Header和Body部分由两个"\r\n"分隔