使用Python开发客户端和服务端程序 理解应用层协议和表示层

假装没事ソ 提交于 2021-01-19 08:39:28

很多学习计算机网的学生,对于服务器和客户机,以及应用层协议 表示层理解的不彻底,在这里我使用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()





标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!