def jsonrpc_success_response(self, result): return Resp(json.dumps({ "error": None, "result": result, }), 200, headers={})
def build_response_from_file(self, request): file_path = request.url[7:] with open(file_path, 'rb') as file: buff = bytearray(os.path.getsize(file_path)) file.readinto(buff) resp = Resp(buff) r = self.build_response(request, resp) return r
def jsonrpc_error_response(self, fault, fault_code, fault_string): return Resp(json.dumps({ "error": { "fault": fault, "faultCode": fault_code, "faultString": fault_string, }, }), 200, headers={})
def send(self, request, **kwargs): stream = self.serialize( dumps({ 'request': { 'data': request.body, 'headers': dict(request.headers) } })) resp = Resp(stream, self.status, self.headers) return self.build_response(request, resp)
def build_response_from_file(self, request): # get path after file:// file_path = request.url[7:] with open(file_path, 'rb') as file: buff = bytearray(os.path.getsize(file_path)) file.readinto(buff) # urllib3 response object resp = Resp(buff) # build Response object,this should not be called from user code, and is only exposed for use # when subclassing the HTTPAdapter r = self.build_response(request, resp) return r
def send(self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None): req = Request(request.method, request.path_url, request.body, request.headers) resp = self.contentstore_api.handle_request(req) response = Resp(resp.body, resp.code, resp.headers) r = self.build_response(request, response) return r
def build_response_from_file(self, request): lna = classname(self) + '.' + inspect.currentframe().f_code.co_name logger = logging.getLogger(lna) logger.debug('url = "{}"'.format(request.url)) file_path = request.url[7:] logger.debug('file_path = "{}"'.format(file_path)) with open(file_path, 'rb') as file: buff = bytearray(os.path.getsize(file_path)) file.readinto(buff) resp = Resp(buff) r = self.build_response(request, resp) return r
def build_response_from_file(self, request): file_path = request.url[7:] mtime = os.path.getmtime(file_path) dt = datetime.datetime.fromtimestamp(mtime, tzlocal()) mimetype = mimetypes.guess_type(file_path)[0] if mimetype is None: mimetype = magic.from_file(file_path, mime=True) headers = {"Last-Modified": http_date(dt)} if mimetype is not None: headers['Content-Type'] = mimetype with open(file_path, 'rb') as file: buff = bytearray(os.path.getsize(file_path)) file.readinto(buff) resp = Resp(buff, headers=headers) r = self.build_response(request, resp) return r
def send(self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None): req = Request(request.method, request.path_url, request.body, request.headers) resp = self.contacts_api.handle_request(req) response = Resp(resp.body, resp.code, resp.headers) r = self.build_response(request, response) if not stream: # force prefetching content unless streaming in use r.content return r
def send(self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None): url, fragment = urldefrag(request.url) self.requests.update({url: 1}) if not url in self.urls: raise ConnectionError('no such virtual url', request.url) resp = Resp(**self.urls[url]) r = self.build_response(request, resp) if not stream: # force prefetching content unless streaming in use r.content return r
def http_error_response(self, http_code, error): return Resp("403 Forbidden", 403, headers={})