python靜態(tài)web服務器如何實現(xiàn)的方法:
1、編寫TCP服務器程序。
2、獲取瀏覽器發(fā)送的http請求消息數(shù)據(jù)。
3、讀取固定的頁面數(shù)據(jù),將頁面數(shù)據(jù)組裝成HTTP響應消息數(shù)據(jù)并發(fā)送給瀏覽器。
4、HTTP響應報文數(shù)據(jù)發(fā)送完成后,關閉服務于客戶端的套接字。
實例
#時間:2021/10/2120:38
importsocket
if__name__=='__main__':
#創(chuàng)建tcp服務端套接字
tcp_server_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#設置端口號復用,程序退出端口立即釋放
tcp_server_socket.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,True)
#綁定端口號
tcp_server_socket.bind(("",8080))
#設置監(jiān)聽
tcp_server_socket.listen(128)
whileTrue:
#等待接受客戶端的連接請求
new_socket,ip_port=tcp_server_socket.accept()
#代碼執(zhí)行到此,說明連接建立成功
recv_client_data=new_socket.recv(4096)
#對二進制數(shù)據(jù)進行解碼
recv_client_content=recv_client_data.decode)
print(recv_client_content)
#響應行
response_line="HTTP/1.1200OK\r\n"
#響應頭
response_header="Server:py1.0\r\n"
#響應體
response_body="Hello,guys!"
#拼接響應報文
response_data=(response_line+response_header+"\r\n"+response_body).encode()
#發(fā)送數(shù)據(jù)
new_socket.send(response_data)
#關閉服務與客戶端的套接字
new_socket.close()
以上內容為大家介紹了python培訓之靜態(tài)web服務器如何實現(xiàn),希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。