【Python网络-TCP协议开发实践】

【Python网络-TCP协议开发实践】,第1张

【Python网络-TCP协议开发实践】 18_TCP服务器端代码案例 一、TCP服务器端代码实例

二、源代码
#1.创建Server-Socket
server_socket = socket(AF_INET,SOCK_STREAM)

#2.绑定一个IP和端口
host_port = ('',8088)
server_socket.bind(host_port)

#3.服务器的Socket监听,listen让Socket处于被动。就可以接收客户端的连接请求
server_socket.listen(5) #5:表示可以监听5个客户端,监听达到5个服务器挂起

#4.等待客户端的连接请求,当前函数是线程阻塞的函数,accept返回两个值,第一个:新的socket
#new_socket相当于server_socket下的子功能
new_socket,client_addr = server_socket.accept()
#完成上述步骤,连接通道已打开,服务徐和客户端都可收发数据,但一般是客户端先发出

#5.服务器接受客户端发过来的数据,recv一般用于TCP协议的接受数据,recvfrom用于UDP
data = new_socket.recv(1024) #data是字节数据
print("服务器端接受的数据是:",data.decode('utf-8'))

#6.服务器端发送数据给客户
new_socket.send('Thank you!'.encode('utf-8'))

#7.关闭套接字
new_socket.close()  #new_socket旧意味着当前客户端的服务已经完成

server_socket.close()   #整个服务器端全部关闭
19_TCP客户端代码案例 一、代码实例

二、源代码
from socket import *
client_socket =  socket(AF_INET,SOCK_STREAM)

#客户端发送连接的请求

#目标服务器的IP和端口号
server_ip_port = ('192.168.43.234',8088)
client_socket.connect(server_ip_port)

send_data = input("请输入:")
client_socket.send(send_data.encode('utf-8'))

#接收服务器返回的数据
recv_data = client_socket.recv(1024)

print("客户端接受到的服务器的数据为:",recv_data.decode('utf-8'))

client_socket.close()
三、运行结果 1、客户端发送数据

①发送数据

③收到服务器回复数据

2、服务器接收数据

②接收数据,回复数据

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5670534.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存