注意:
1). 客户端发送给服务端,大小写不会变化
2).字符串.encode().upper() 到客户端 decode()之后,英文字母会全变成大写
3). 传各种数据,配合 pickle【个人建议】
server 端
server = socket.socket(AF.INET, sock.SOCK_STREAM)
# 绑定要监听的端口
server.bind('localhost', 6969)
# 监听开始
server.listen()
# 等待接入
server.accept()
# 准备接收的数据大小 字节 8192
data = server.recv(1024)
print('接收到:', data)
# 发送数据
server.send(data.upper())
# 关闭连接
server.close()
client 端
client = socket.socket()
client.connect(('localhost', 6969))
client.send('hello')
data = client.recv(1024)
print(data)
client.close()
粘包
客户端发出一条命令,服务端不能一次性全部返回;而且服务器将原有的接收到的命令返回信息和命令运行后的结果,都传回到客户端,这样数据就混在一直,这种形态就是粘包
- 防止粘包:隔断上下关联