# 服务端必须满足至少三点:
# 1. 绑定一个固定的ip和port
# 2. 一直对外提供服务,稳定运行
# 3. 能够支持并发
##总结:
###现在这个服务端与客户端的架构没有太大的问题了,能实现基本的通信功能,服务端将接收到的来自客户端的数据,分析,处理
##并且返回该数据的大写,
##但是有两个问题就是,1,不能实现并发,2.一旦客户端强制中断了,服务端也会崩了
###服务端程序
from socket import *
server = socket(AF_INET, SOCK_STREAM)
server.bind(('127.0.0.1', 8080))
server.listen(5)
conn, client_addr = server.accept()
# 通信循环
while True:
data = conn.recv(1024)
print('接收到的数据有:',data.decode('utf-8'))
conn.send(data.upper())
if data == b'q':
conn.send(b'None')
conn.close()
server.close()
##客户端程序
from socket import *
client = socket(AF_INET, SOCK_STREAM)
client.connect(('127.0.0.1', 8080))
# 通信循环
while True:
msg = input('>>: ').strip()
if len(msg) == 0:
continue
client.send(msg.encode('utf-8')) ##发送
data = client.recv(1024) ##接收
print(data.decode('utf-8'))
if data == b'None':
break
client.close()
转载于:https://www.cnblogs.com/1832921tongjieducn/p/11352476.html