其他分享
首页 > 其他分享> > 2019.09.09学习整理

2019.09.09学习整理

作者:互联网

2019.09.09学习整理

基于socket套接字的UDP协议

UDP套接字示例

客户端

import socket

cli = socket.socket(type=socket.SOCK_DGRAM)

while True:
    msg = input('>>:').strip()
    cli.sendto(msg.encode('utf-8'), ('127.0.0.1', 8003))
    data,ser_addr=cli.recvfrom(1024)


cli.close()

服务端

import socket

ser=socket.socket(type=socket.SOCK_DGRAM)

ser.bind(('127.0.0.1',8003))

while True:
    data,client_addr=ser.recvfrom(1024)
    ser.sendto(data.upper(),client_addr)

ser.close()

UDP套接字无粘包问题

udp协议的特点

可以发空(数据报协议,有头)
不需要建连接
不会粘包
不可靠(客户端,服务端谁断开都不受影响)

socketserver的使用

tcp服务端

server=ThreadingTCPServer 对象
server.serve_forever
写一个类,类里重写handle,方法内收发数据(并发起来了)

udp服务端

server=ThreadingUDPServer 对象
server.serve_forever
写一个类,类里重写handle,方法内收发数据(并发起来了)

socketserver的源码分析

ftpserver=socketserver.ThreadingTCPServer(('127.0.0.1', 8080),FtpServer)
ftpserver.serve_forever()

源码总结

标签:2019.09,socket,self,09,request,server,client,整理,接字
来源: https://www.cnblogs.com/zhangmingyong/p/11493552.html