# -*- coding: utf-8 -*-
# @Time : 2021/6/14 16:47
# @Author : 飞鸟凌
# @File : tcp_socket_服务器与客户端循环收发数据.py
import socket
LOCAL_ADDRESS = ""
LOCAL_PORT = 7777 # 自己可修改端口号(>1024)即可
def main():
# 1.创建套接字
tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 2.绑定端口
tcp_socket.bind((LOCAL_ADDRESS, LOCAL_PORT))
# 3.设置为监听模式
tcp_socket.listen(128)
# 循环调用
while True:
# 1.等待接收客户端响应
print("正在等待客户端连接...")
new_client_socket, new_client_address = tcp_socket.accept()
print("一个客户端已经连接")
# 循环为客户端服务
while True:
# 检测是否客户端与服务器连接中断
try:
rev_data = new_client_socket.recv(1024)
except ConnectionError as e:
print(e)
break
if rev_data:
print("从客户端%s接收到的数据为:%s"
% (str(new_client_address), rev_data.decode("gbk")))
send_data = input("你想要回复的信息为:")
new_client_socket.send(send_data.encode("gbk"))
else:
print("客户端已断开连接")
break
new_client_socket.close()
tcp_socket.close() # 此行代码没用,因为代码循环执行只能手动关闭
if __name__ == '__main__':
main()
tcp_socket_服务器与客户端循环收发数据
最新推荐文章于 2024-05-07 11:05:15 发布