这篇文章主要为大家展示了“python中如何搭建单向通信TCP服务器”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python中如何搭建单向通信TCP服务器”这篇文章吧。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:国际域名空间、网络空间、营销软件、网站建设、六安网站维护、网站推广。
1、搭建流程
(1)首先创建一个套接字,TCP是一个面向流的套接字。所以需要使用SOCK_STREAM。
(2)然后使用bind()函数将套接字与服务器地址相关联(因为我们只是在本地测试,直接将地址设置为127.0.0.1或localhost,端口号为10000)。当然,如果你周围有两台计算机设备,你可以直接更换局域网的IP地址。
(3)调用listen()函数将套接字设置为服务器模式,然后无限循环等待,参数为最大排队次数。
在循环中,调用accept()等待客户端的信息连接。如果客户端连接,accept()函数将返回打开的连接和客户端地址。
(4)指示缓冲区,用于存储recv函数收到的数据。
(5)使用sendall()返回客户端数据。返回数据后,即使与当前客户端通信完成。需要使用close()关闭清理。
2、实例
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服务器”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!