欢迎光临
我们一直在努力

网络编程基础服务端与客户端通信

注意:运行代码时要优先运行服务端进入监听状态,在运行客户端,才能通信。

先来python服务端代码:

import socket

# 1、创建服务器的socket对象
tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 2、绑定IP和端口
tcp_server_socket.bind(("", 8899))

# 3、设置监听,客户端连接需要排队
tcp_server_socket.listen(128)

# 4、接受客户端的IP地址和端口
server_client_socket, ip_port = tcp_server_socket.accept()
print(f"客户端的IP地址和端口:{ip_port}")

# 5、接受客户端发送过来的数据 接受数据的大小 (字节)
recv_data = server_client_socket.recv(1024)

# 6、获取并打印数据长度
recv_data_length = len(recv_data)
print(f"接受到的数据的长度:{recv_data_length}")

# 7、接受客户端的信息(内容),解码
recv_content = recv_data.decode("utf-8")
print(f"接收到的客户端的信息是:{recv_content}")

# 8、服务端发送数据给客户端
send_data = "我已收到,正在处理...".encode("utf-8")
server_client_socket.send(send_data)

# 9、第一次关闭服务端与客户端的套接字,终止客户端的通信
server_client_socket.close()
tcp_server_socket.close()

现在来个客户端代码:

import socket

# 1、创建客户端的socket对象
tcp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 2、和服务端的套接字进行连接
tcp_client_socket.connect(("192.168.1.4", 8899))

# 3、客户端发送数据给服务器
send_data = "你好,我是客户端".encode("utf-8")
tcp_client_socket.send(send_data)

# 4、接受服务端发送过来的数据,并解码
recv_data = tcp_client_socket.recv(1024)
recv_content = recv_data.decode("utf-8")

print(f"接收到服务器的消息为:{recv_content}")

# 5、关闭连接
tcp_client_socket.close()
赞(0) 打赏
未经允许不得转载:创想未来 » 网络编程基础服务端与客户端通信

评论 抢沙发

评论前必须登录!

 

更好的Python学习

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

联系我们联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册