python socketserver

本文介绍了一种使用Python的socketserver模块实现TCP多连接的服务器与客户端的方法。通过继承BaseRequestHandler类并利用多线程,服务器可以同时处理多个客户端的连接请求。文章提供了完整的代码示例,包括服务器端的无限循环接收与发送数据,以及客户端的连接与数据交互过程。

目的:实现tcp的多连接

"""
Server端
1.导入模块
2.创建类,继承
3.多线程
4。永远开启
"""
import socketserver


class MyService(socketserver.BaseRequestHandler):
    def handle(self):
        while 1:
            info = input('Server>>>')
            self.request.send(info.encode('utf-8'))
            if info == 'byte':
                break
            res = self.request.recv(1024)
            new_res = res.decode('utf-8')
            print(new_res)
            # if new_res == 'byte':
            #     break


if __name__ == '__main__':
    server = socketserver.ThreadingTCPServer(('127.0.0.1', 8010), MyService)
    server.serve_forever()
"""
Client端
"""
import socket
sk = socket.socket()
sk.connect(('127.0.0.1', 8010))
while 1:
    msg = sk.recv(1024).decode('utf-8')
    print(msg)
    if msg == 'byte':
        break
    info = input('Client>>>')
    sk.send(info.encode('utf-8'))
    if info == 'byte':
        break
sk.close()

 

转载于:https://www.cnblogs.com/wt7018/p/10991954.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值