美文网首页python百例
96-可重用的TCP服务器

96-可重用的TCP服务器

作者: 凯茜的老爸 | 来源:发表于2018-08-04 13:52 被阅读4次

    95-socket基础:TCP服务器流程中,TCP服务器只能一个客户端连接,客户端也只能发送一条消息。本例允许客户端发送多条消息,输入end结束。客户端退出后,服务器程序不再退出,可以为下一个客户端提供服务:

    import socket
    
    host = ''
    port = 12345
    addr = (host, port)
    s = socket.socket()
    s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    s.bind(addr)
    s.listen(1)
    while True:
        cli_sock, cli_addr = s.accept()
        print('Client connect from:', cli_addr)
        while True:
            data = cli_sock.recv(1024)
            if data.strip() == b'end':
                break
            print(data.decode('utf8'))  # bytes类型转为string类型
            data = input('> ') + '\r\n'  # 获得的是string类型
            cli_sock.send(data.encode('utf8'))  # 转成bytes类型发送
        cli_sock.close()
    s.close()
    

    相关文章

      网友评论

        本文标题:96-可重用的TCP服务器

        本文链接:https://www.haomeiwen.com/subject/cicmvftx.html