• 技术文章 >Python技术 >Python基础教程

    python中单向通信TCP服务器的搭建

    小妮浅浅小妮浅浅2021-06-05 16:54:23原创3098

    1、搭建流程

    (1)首先创建一个套接字,TCP是一个面向流的套接字。所以需要使用SOCK_STREAM。

    (2)然后使用bind()函数将套接字与服务器地址相关联(因为我们只是在本地测试,直接将地址设置为127.0.0.1或localhost,端口号为10000)。当然,如果你周围有两台计算机设备,你可以直接更换局域网的IP地址。

    (3)调用listen()函数将套接字设置为服务器模式,然后循环等待,参数为排队次数。

    在循环中,调用accept()等待客户端的信息连接。如果客户端连接,accept()函数将返回打开的连接和客户端地址。

    (4)指示缓冲区,用于存储recv函数收到的数据。

    (5)使用sendall()返回客户端数据。返回数据后,即使与当前客户端通信完成。需要使用close()关闭清理。

    2、实例

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    import socket

      

    # 1.创建一个套接字,

    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    # 2.使用bind()函数将套接字与服务器地址关联

    sock.bind(('localhost', 10000))

    # 3.调用listen()函数将套接字设置为服务器模式

    sock.listen(1)

      

    while True:

        # 4.调用accept()等待客户端的消息连接

        # 如果有客户端进行连接,那么accept()函数会返回一个打开的连接与客户端地址

        connection, client_address = sock.accept()

        print("连接客户端地址:", client_address)

        try:

            # 5.指明一个缓冲区,该缓冲区用来存放recv函数接收到的数据

            data = connection.recv(1024)

            print(data)

            if data:

                # 6.通过sendall()进行回传客户端数据。

                connection.sendall("已接受到数据".encode())

            else:

                print("客户端没有发送数据,不需要传送数据")

        finally:

            #7.需要使用close()进行关闭清理

            connection.close()

    以上就是python中单向通信TCP服务器的搭建,希望对大家有所帮助。更多Python学习指路:python基础教程

    专题推荐:python中单向通信tcp
    上一篇:python Unittest的组成 下一篇:python中客户端通信的实现流程

    相关文章推荐

    • Python中concurrent.futures模块如何使用• Python kmeans聚类的使用• Python K-means算法的计算步骤• Python默认值的使用注意• Python特殊传参如何实现• python中的两种输出语句• python循环语句的两种类型• python继承的多种类型• python中pandas模块查看DataFrame• python merge()的连接• python join()合并DataFrame的操作• python concat方法的作用• python Unittest的组成

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网