Пример #1
0
 def jsonrpc_success_response(self, result):
     return Resp(json.dumps({
         "error": None,
         "result": result,
     }),
                 200,
                 headers={})
Пример #2
0
 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
Пример #3
0
 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={})
Пример #4
0
    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)
Пример #5
0
    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
Пример #6
0
 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
Пример #7
0
    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
Пример #8
0
 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
Пример #9
0
 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
Пример #10
0
 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
Пример #11
0
 def http_error_response(self, http_code, error):
     return Resp("403 Forbidden", 403, headers={})