1. 程式人生 > >Python之tcp server模擬Http通訊

Python之tcp server模擬Http通訊

1.python tcp server程式碼:

 1 import socket
 2 
 3 
 4 def main():
 5     tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
 6     tcp_server_socket.bind(('', 6699))
 7     tcp_server_socket.listen(128)
 8 
 9     while True:
10         new_client_socket, new_client_addr = tcp_server_socket.accept()
11 # 接收瀏覽器請求 12 request = new_client_socket.recv(1024) 13 print(request) 14 15 # 響應瀏覽器請求 16 # 為了相容所有的瀏覽器約定瀏覽器中的換行為\r\n 17 respond = 'GET HTTP/1.1\r\n' 18 respond += '\r\n' 19 respond += '<h2>Hello Python</h2>' 20 new_client_socket.send(respond.encode('
utf=8')) 21 new_client_socket.close() 22 23 tcp_server_socket.close() 24 25 26 if __name__ == '__main__': 27 main()

終端顯示:

1 b'GET / HTTP/1.1\r\nHost: 127.0.0.1:6699\r\nUser-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.5\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nCache-Control: max-age=0\r\n\r\n
'