ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

06tcp服务端

2021-03-29 15:02:12  阅读:80  来源: 互联网

标签:socket 06tcp tcp server client print 服务端 客户端


为了更好的理解这个过程会输出一些-----1-----数字

1.运行代码(服务端先启动)

import socket


def main():
    # 1. 买个手机(创建套接字 socket)
    tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 2. 插入手机卡(绑定本地信息 bind)
    tcp_server_socket.bind(("", 7890))

    # 3. 将手机设置正常的响铃模式(让默认的套接字由主动变为被动 listen)
    tcp_server_socket.listen(128)
    while True:
        print("----1----")
        # 4. 等待别人的电话到来(等待客户端的连接 accept)
        print(tcp_server_socket.accept())
        new_client_socket, client_addr = tcp_server_socket.accept()  # 拆包元组
        print("====2====")
        # print(tcp_server_socket.accept())
        print(new_client_socket)
        print(client_addr)
        while True:
            # 接收客户端发来的请求
            recv_data = new_client_socket.recv(1024)
            print(recv_data)
            # 如果recv解堵塞,有两种方式:
            #   1. 客户端发送过来数据
            #   2. 客户端调用了close
            if recv_data:
                # 回送数据给客户端
                new_client_socket.send("hahahahahahh.....ok".encode("utf-8"))
            else:
                break
        # 关闭套接字
        new_client_socket.close()
    tcp_server_socket.close()


if __name__ == "__main__":
    main()

2.运行后立刻有

在这里插入图片描述

3.在网络调试助手上填好ip与port后,点一次连接会:

在这里插入图片描述

4.再点一次连接会

在这里插入图片描述

5.客户端向服务端发送消息

在这里插入图片描述

标签:socket,06tcp,tcp,server,client,print,服务端,客户端
来源: https://blog.csdn.net/hh3167253066/article/details/115300829

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有