client 完善
server 重构