重构了handler通信部分