zoukankan      html  css  js  c++  java
  • python第九天

    课程太简单,作业太困难,所以我来写微博回复一下战斗力,这才是事情的真相,明天还要跟领导吃饭,不会显我吃太多把我开除掉吧

    soket编程,so easy,可是作业不会做

    recv()跟accept()是阻塞的,数据交互过程如果某一端突然断开了连接,另外一端就会开始报复社会,所以要对数据进行验证

    粘包问题的结局就是在发送数据前先发送数据的信息即可,然后循环收取一直到收齐数据即可

    按照国际惯例该来代码了,可是这次的课程完全就是在用同一篇代码.....更重要的是作业也是....最重要的是作业我还没写出来,只能先放几个凑数的了

     1 #!/usr/bin/env python
     2 import socketserver
     3 import subprocess
     4 
     5 class MyServer(socketserver.BaseRequestHandler):
     6     def handle(self):
     7         self.request.sendall(bytes('欢迎致电10086', encoding='utf-8'))
     8         while True:
     9             rec_mes = self.request.recv(1024)
    10             print('%s:%s' % (self.client_address, rec_mes.decode()))
    11             cmd = subprocess.Popen(rec_mes.decode(), shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    12             cmd_ret = cmd.stdout.read()
    13             if not cmd_ret:
    14                 cmd_ret = cmd.stderr.read()
    15             if len(cmd_ret) == 0:
    16                 cmd_ret = bytes('cmd not output', encoding='utf-8')
    17             self.request.sendall(cmd_ret)
    18 
    19 if __name__ == '__main__':
    20     server = socketserver.ThreadingTCPServer(('127.0.0.1', 9999), MyServer)
    21     server.serve_forever()
     1 #!/usr/bin/env python
     2 import socket
     3 ip_port = ('127.0.0.1', 9999)
     4 s = socket.socket()
     5 s.connect(ip_port)
     6 welcome_mes = s.recv(1024)
     7 print(welcome_mes.decode())
     8 while True:
     9     send_mes = input('>>:').strip()
    10     if len(send_mes) == 0:
    11         continue
    12     s.send(bytes(send_mes, encoding='utf-8'))
    13     recv_mes = s.recv(1024)
    14     print(str(recv_mes, encoding='utf-8'))
    15 s.close()

    这连粘包问题都没解决呢,而且还跟操作系统有关系,在win上直接会gg,写作业!我有师兄我不怕!

  • 相关阅读:
    你了解JWT吗?
    链接
    C#读取EXCEL发生错误
    TM1637驱动数码管
    Keil中的Code,RO,RW,ZI分别表示什么
    IE 不支持 promise 解决方法
    JS 时间戳转日期格式
    JS input 输入框只能输入 字母和汉字
    小程序 保存图片失败
    小程序充值,方法步骤
  • 原文地址:https://www.cnblogs.com/bfmq/p/5864985.html
Copyright © 2011-2022 走看看