本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
1、服务器端
recvfrom()方法返回数据和客户端的地址与端口,这样,服务器收到数据后,直接调用sendto()就可以把数据用UDP发给客户端。
#coding:utf-8 importsocket #创建套接字 s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) #绑定地址和端口 addr='127.0.0.1' port=9999 s.bind((addr,port)) print("BindUDPon",port) #数据处理 whileTrue: data,addr=s.recvfrom(1024) print("Receivedatafrom%s:%s"%addr) s.sendto(b"Hello,%s!"%data,addr)
2、客户端
客户端使用UDP时,首先仍然创建基于UDP的Socket,然后,不需要调用connect(),直接通过sendto()给服务器发数据:
#coding:utf-8 importsocket addr='127.0.0.1' port=9999 s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) fordatain[b'Hello',b'world!']: s.sendto(data,(addr,port)) print(s.recv(1024).decode('utf-8')) s.close()
我们知道想要实现数据之间的传递,会有用户和服务方的产生。由用户提供需求,服务方把成果反馈给用户。本篇就UDP编程在通信的过程分为两个部分:服务器端和客户端。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)