rpcserver.py 文件源码

python
阅读 26 收藏 0 点赞 0 评论 0

项目:xmusic-crawler 作者: rockers7414 项目源码 文件源码
def handle(self):
        while True:
            self.logger.info("Handler thread name = {}/active count = {}"
                             .format(threading.current_thread().name,
                                     threading.active_count()))
            header = MessageHeader(
                self.rfile.read(MessageHeader.HEADER_LENGTH))
            self.logger.info("Message length = {}".format(header.length))
            self.data = ""
            while len(self.data) < header.length:
                buf = self.rfile.read(
                    min(self.MAX_BUF_LENGTH, header.length - len(self.data)))
                self.data += str(buf, "UTF-8")
                self.logger.info("current length = {}, total length = {}"
                                 .format(len(self.data),
                                         header.length))

            self.logger.info("{0} request = {1}"
                             .format(self.client_address[0],
                                     self.data))
            response = JSONRPCResponseManager.handle(self.data, dispatcher)
            self.logger.info("response for {0} = {1}"
                             .format(self.client_address[0],
                                     response.json))
            self.wfile.write(MessageHeader.create(
                len(response.json)) + bytes(response.json, "UTF-8"))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号