使用Python開發客戶端和服務端程序 理解應用層協議和表示層

很多學習計算機網的學生,對於服務器和客戶機,以及應用層協議 表示層理解的不徹底,在這裏我使用Python編寫了用於傳輸學生信息的程序。服務端使用TCP的8898端口偵聽客戶端的請求。客戶端向服務端發送學生信息。信息的格式已經固定。QQ號+姓名+手機號+地址,每個學生一行。服務端收到後將信息存儲到記事本文件。
服務端程序代碼:
from socket import *

host = '192.168.80.120'
bufferSize = 1024
port = 8898
sc = (host,port)
s = socket(AF_INET,SOCK_STREAM)
s.bind(sc)




s.listen()

c,addr = s.accept()
data = c.recv(bufferSize)
print(data.decode('utf_8'))
f = open('.\student.txt','a+')
f.write(data.decode('utf_8'))
f.close()
c.send('200,收到學生信息\n'.encode(encoding='utf_8'))
c.close()
s.close()







客戶端程序代碼:

import socket
sk = socket.socket()
sk.connect(('192.168.80.120',8898))
sk.send('458717185韓立剛13803367991河北省石家莊市藁城市\n434566555韓輝13803443391河南省鄭州市長江大道\n'.encode(encoding='utf_8'))
ret = sk.recv(1024)
print(ret.decode('utf_8'))
sk.close()





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章