zoukankan      html  css  js  c++  java
  • socketserver模块

    模块:socketserver模块(内置模块)(并发原理)
          socketserver这个模块主要是为了解决:TCP协议中,服务器不能同时连接多个客户端的问题
          而继承的这个类中的self.request等价于原来socket中的conn(conn,addr=sk.accept())      
    #server层(固定形式)
    import socketserver
    class MySocket(socketserver.BaseRequestHandler):
        def handle(self):# 这个方法的名字是固定的,必须是这个名字
            # 收发的逻辑代码
            # self.request == conn
            msg = self.request.recv(1024).decode('utf-8')
            print(msg)
            self.request.send(msg.upper().encode('utf-8'))
            
    server = socketserver.TCPServer(('127.0.0.1',8080),MySocket)# 固定的
    server.serve_forever()# 开启一个永久性的服务
    
    
    #client层
    import socket
    sk = socket.socket()
    sk.connect(('127.0.0.1',8080))
    
    msg_s = input('>>>')
    sk.send(msg_s.encode('utf-8'))
    
    print(sk.recv(1024).decode('utf-8'))
    
    sk.close()
  • 相关阅读:
    BUUCTF--[GUET-CTF2019]number_game
    36D杯CTF Re WP
    BUUCTF--[GWCTF 2019]re3
    虎符网络安全赛道 Re Game
    Python ZIP压缩文件破解
    合唱队, 华为
    字符串排序, 华为
    称砝码, 华为
    迷宫问题, 华为
    Sudoku , 华为
  • 原文地址:https://www.cnblogs.com/god-for-speed/p/11719062.html
Copyright © 2011-2022 走看看