基于UDP协议的服务器——UDP服务器创建方案

本文介绍了如何创建基于UDP协议的服务器,包括使用socketserver库的TimeHandler类以及直接使用socket模块的方法。通过实例展示了单线程和多线程UDP服务器的实现,并提供了详细代码。最后鼓励读者深入学习服务器知识。
摘要由CSDN通过智能技术生成

什么是UDP服务器?

UDP服务器就是实现一个基于UDP协议的服务器来与客户端通信。就是用来收发数据,进行数据处理的。

基于UDP协议的服务器——UDP服务器创建方案

 

与TCP服务器不同的是不用建立连接,直接调用recvfrom来收包。

跟TCP服务器一样,UDP服务器也可以通过使用 socketserver 库很容易地被创建。

先定义一个实现 handle() 特殊方法的类,为客户端连接服务。 这个类的 request 属性是一个包含了数据包和底层socket对象的元组。client_address 包含了客户端地址。

 

  1. from socketserver import BaseRequestHandler, UDPServer
  2. import time
  3.  
  4.  
  5. class TimeHandler(BaseRequestHandler):
  6. def handle(self):
  7. print('Got connection from', self.client_address)
  8. message, sock = self.request
  9. resp = time.ctime()
  10. sock.sendto(resp.encode('ascii'), self.client_address)
  11.  
  12.  
  13. if __name__ == '__main__':
  14. serv = UDPServer(('', 16888), TimeHandler)
  15. serv.s
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值