导语:
本文主要介绍了关于python中单向通信TCP服务器的搭建的相关知识,包括python用什么服务器,以及python udp通信这些编程知识,希望对大家有参考作用。
1、搭建流程
(1)首先创建一个socket,TCP是面向流的socket。所以你需要使用 SOCK_STREAM。
(2)然后使用bind()函数将socket与服务器地址相关联(因为我们只是在本地测试,所以直接设置地址为127.0.0.1或者localhost,端口号为10000)。当然,如果你身边有两台电脑设备,你可以直接更改局域网的IP地址。
(3)调用listen()函数将socket设置为server模式,然后循环等待,参数为队列数。
在循环中,调用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()
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
内容反馈