socketserver内置模块

Posted ddzc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了socketserver内置模块相关的知识,希望对你有一定的参考价值。

socketserver内置模块

  • socketserver模块是一个内置模块,主要解决的是socket只能一对一, 不能多对多通信的问题,设置在服务端,不是客户端。
  • 基本格式为:
    • 导入:import socketserver
    • 创建类class Mysocket(socketserver.BaseRequestHandler)
      • 创建类方法:handle,注意:方法名必须是handle
      • self.request等同于socket中的conn,用法完全一样
      • 在方法里编写server的代码
    • 申请资源:server = socketserver.TCPServer((‘ip地址‘,端口号))
    • 开启一个永久性的服务:server.serve_forever()
  • 客户端代码逻辑不变
import socketserver

class Mysocket(socketserver.BaseRequestHandler):
    def handle(self):
        # 方法名必须是handle,其他的名字不行
        '''收发的逻辑代码'''
        msg =  self.request.recv(1024).decode('utf-8')
        self.request.send(msg.upper().encode('utf-8'))
        
    
server = socketserver.TCPServer(('172.16.12.167', 8081), Mysocket)
# 固定的格式
server.serve_forever()
# 开启一个永久的服务

以上是关于socketserver内置模块的主要内容,如果未能解决你的问题,请参考以下文章

Python 套接字socketserver网络编程

SocketServer 没有模块正在导入

Day43:socketserver模块MySQL

数据库:socketserver模块MySQL

python网络编程 socketserver模块

八. 网络编程( socketserver 模块 初级使用)