• Python socket套字节


    套接字socket标准:
    位于:应用层--(socket抽象层)--传输层 之间

    #Servre
    import socket
    
    phone=socket.socket(socket.AF_INET,socket.SOCK_STREAM)   #第一步:初始化socket
    phone.bind(('127.0.0.1',8080))                          #第二步:绑定端口
    phone.listen(5)                                          #第三步:监听端口
    conn, client_add = phone.accept()                        #第四步:接收客户端的connect连接请求
    while True:  #数据循环
        try:
            data=conn.recv(1024)                             #第五步:接收客户端传来的数据信息
            if len(data) == 0:break
            conn.send(data.upper())                          #第六步:给客户端回复信息
            print(data)
        except ConnectionResetError:
            break
    #传输数据关闭
    conn.close()                                             #第七步:传输数据关闭
    
    #连接关闭
    # phone.close()                                           #第八步:连接关闭
    
    #为了用户端和服务端能够互相交互延长时间:
        #将发送和接收数据写入到while里面(即建立一个通信循环)
    #Client
    import socket
    
    phone=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    phone.connect(('127.0.0.1',8080))
    while True:
        msg=input('输入发送的内容:')
        if len(msg) == 0:continue
        phone.send(msg.encode('utf-8'))   #只能传二进制bytes,所以要编码
        data=phone.recv(1024)
        print(data)
    phone.close()

    为了实现和多个客户端进行通信交互:所以在外服务端accept上面加一个while循环

  • 相关阅读:
    思考的容器:结构
    思维的结构-结构是思维的组织形式-系统思维
    分层 抽象 复杂 认知
    NoSQL 简介
    什么是数据库ACID?
    sqlite3 多线程和锁 ,优化插入速度及性能优化
    Architecture of SQLite
    关系模型我的理解
    科学理论--抽象
    认识的三个层次
  • 原文地址:https://www.cnblogs.com/yangzhizong/p/9277023.html
Copyright © 2020-2023  润新知