zoukankan      html  css  js  c++  java
  • socket socketserver

    socketserver 可以提供多线程的方式处理client 发过来的请求

    # -*- coding: utf-8 -*-
    '''
    1.创建一个请求处理类, 这个类要继承BaseRequestHandler , 重写handle() 方法  , 与客户端所有的交互都是在handle 这个 方法中完成的
    
    2.实例化TCPServer , 传递 server ip 和第一步创建的请求处理类给这个TCPServer
    
    3.调用handle_request 或者server_forever 方法
    server.handle_request() 方法值处理一个请求
    server.server_forever() 方法处理多个请求
    
    4.调用server.close() 关闭
    '''
    
    import socketserver
     
    #1.创建一个请求处理类
    class myTCPServer(socketserver.BaseRequestHandler):
        #.重写handle
        def handle(self):
             while True:
                #接收客户端的数据 
    #             try: 3.0 如果有异常说明client 断开
                    self.data = self.request.recv(1024)
                    print(self.client_address[0])
                    if not self.data:
                        break
                    
                    self.request.send(self.data.upper())
                    
                    
    #             except Exception as e:
    #                 print("客户端断开",e)
    #                 break
    
    HOST,PORT = "localhost",6969
    #2.实例化TCPServer   , ThreadingTCPServer 是多并发
    server = socketserver.ThreadingTCPServer((HOST,PORT),myTCPServer)
    
    #3.调用server.server_forever()
    server.serve_forever()
                    
  • 相关阅读:
    WordPress修改后台登录地址
    android开发之浅谈viewpager
    android开发之viewpager and Fragment
    android开发之 广播机制
    android开发之 SQLite(数据库)
    前端目标——天猫网页
    android 开发之Toast
    centos8 单机安装k8s
    mysql 查看库大小
    idea 常见问题
  • 原文地址:https://www.cnblogs.com/gaizhongfeng/p/7999670.html
Copyright © 2011-2022 走看看