auto_mock.py 文件源码

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

项目:libmozdata 作者: mozilla 项目源码 文件源码
def request_callback(self, request):
        logger.debug('Mock request {} {}'.format(request.method, request.url))
        path = self.build_path(request.method, request.url)

        if os.path.exists(path):
            # Load local file
            logger.info('Using mock file {}'.format(path))
            with gzip.open(path, 'rb') as f:
                response = pickle.load(f)
        else:
            # Build from actual request
            logger.info('Building mock file {}'.format(path))
            response = self.real_request(request)

            # Save in local file for future use
            with gzip.open(path, 'wb') as f:
                # Use old pickle ascii protocol (default)
                # to be compatible with Python 2
                f.write(pickle.dumps(response, protocol=2))

        return (
            response['status'],
            response['headers'],
            response['body'],
        )
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号