当前位置: 首页>>代码示例>>Python>>正文


Python Response.status_int方法代码示例

本文整理汇总了Python中webob.Response.status_int方法的典型用法代码示例。如果您正苦于以下问题:Python Response.status_int方法的具体用法?Python Response.status_int怎么用?Python Response.status_int使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在webob.Response的用法示例。


在下文中一共展示了Response.status_int方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: __call__

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
        def __call__(self, environ, start_response):
            try:
                return self.app(environ, start_response)
            except Exception as exc:
                # get a formatted exception
                out = StringIO()
                print_exc(file=out)
                LOG.exception(exc)

                # get formatted WSGI environment
                formatted_environ = pformat(environ)

                # render our template
                result = debug_template.render(
                    traceback=out.getvalue(),
                    environment=formatted_environ
                )

                # construct and return our response
                response = Response()
                if isinstance(exc, HTTPException):
                    response.status_int = exc.status
                else:
                    response.status_int = 500
                response.unicode_body = result
                return response(environ, start_response)
开发者ID:adamchainz,项目名称:pecan,代码行数:28,代码来源:debug.py

示例2: __call__

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
    def __call__(self, environ, start_response):
        relative_urls = asbool(self.config.get('adhocracy.relative_urls',
                                               'false'))
        environ['adhocracy.domain'] = self.domain
        instance_key = self.config.get('adhocracy.instance')

        if instance_key is None:
            instance_key = self.domains_instances.get(environ.get('HTTP_HOST'))

        if instance_key is None:
            if relative_urls:
                path = environ.get('PATH_INFO', '')
                if path.startswith('/i/'):
                    instance_key = path.split('/')[2]
                    environ['PATH_INFO'] = path[len('/i/' + instance_key):]
                    if environ['PATH_INFO'] == '':
                        response = Response()
                        if instance_key == '':
                            response.status_int = 404
                            # Double slashes are stripped, so we can't redirect
                            # to /i//
                            return response(environ, start_response)

                        response.status_int = 302
                        response.headers['location'] = path + '/'
                        return response(environ, start_response)
            else:
                host = environ.get('HTTP_HOST', "")
                host = host.replace(self.domain, "")
                host = host.replace('localhost', "")
                host = host.split(':', 1)[0]
                host = host.strip('.').strip()
                instance_key = host

        if instance_key:  # instance key is set (neither None nor "")
            instance = model.Instance.find(instance_key)
            if instance is None:
                response = Response()
                if not relative_urls:
                    # HTTP_HOST needs to be set to an existing domain,
                    # otherwise we end up here again after being internally
                    # redirected from StatusCodeRedirect and produce a white
                    # page.
                    environ['HTTP_HOST'] = self.domain
                    # Fair handling of users prefixing everything with www.
                    if instance_key == 'www':
                        response.status_int = 301
                        response.headers['location'] = \
                            base_url(environ.get('PATH_INFO', '/'),
                                     absolute=True, config=self.config)
                        return response(environ, start_response)
                response.status_int = 404
                return response(environ, start_response)
            else:
                model.instance_filter.setup_thread(instance)
        try:
            return self.app(environ, start_response)
        finally:
            model.instance_filter.setup_thread(None)
开发者ID:alkadis,项目名称:vcv,代码行数:61,代码来源:discriminator.py

示例3: jresponse

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
def jresponse(status,msg,req,status_int,headers=None,statusstr='',param=None):
    
    data = {'status':str(status),'msg':str(msg)}
    
    if param:
        data.update(param)
        
    container_list = json.dumps(data)
    if headers:
        ret = Response(body=container_list, request=req,headers=headers)
    else:
        ret = Response(body=container_list, request=req)
        
    ret.content_type = 'application/json'
    ret.charset = 'utf-8'
    ret.status_int = status_int
    if statusstr:
        ret.status = statusstr
        
    if status != '0' and req.method == 'PUT': 
        pass
        # syslog.syslog(syslog.LOG_ERR,'jresponse:   status: ' + str(status_int)+'  path: '+str(req.path)+'  msg: '+str(msg) + '  tx_id:  '+ req.environ.get('swift.trans_id',''))
        # print 'jresponse:   status: ' + str(status_int)+'  path: '+str(req.path)+'  msg: '+str(msg) + '  tx_id:  '+ req.environ.get('swift.trans_id','') + '  method:  '+str(req.method) + '  headers:  '+str(req.headers) + '  params:  '+str(req.GET)
        # traceback.print_stack() 
        # syslog.syslog(syslog.LOG_ERR,'jresponse:   '+str(traceback.extract_stack() ))     
        # syslog.syslog(syslog.LOG_ERR,'jresponse:   '+str(traceback.print_stack() ))
    return ret
开发者ID:sun3shines,项目名称:web,代码行数:29,代码来源:bufferedhttp.py

示例4: test_HEAD_conditional_response_range_empty_response

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
def test_HEAD_conditional_response_range_empty_response():
    from webob.response import EmptyResponse
    req = Request.blank('/')
    req.method = 'HEAD'
    res = Response(request=req, conditional_response=True)
    res.status_int = 200
    res.body = 'Are we not men?'
    res.content_length = len(res.body)
    class FakeRequest:
        method = 'HEAD'
        if_none_match = 'none'
        if_modified_since = False
        def __init__(self, env):
            self.env = env
            self.range = self # simulate inner api
            self.if_range = self
        def content_range(self, length):
            """range attr"""
            class Range:
                start = 4
                stop = 5
            return Range
        def match_response(self, res):
            """if_range_match attr"""
            return True
    def start_response(status, headerlist):
        pass
    res.RequestClass = FakeRequest
    result = res({}, start_response)
    ok_(isinstance(result, EmptyResponse), result)
开发者ID:GdZ,项目名称:scriptfile,代码行数:32,代码来源:test_response.py

示例5: __call__

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
    def __call__(self, environ, start_response):
        request = Request(environ)
        response = None

        # match route or 404
        view_fn = self.get_view_for_route(request)
        if view_fn is None:
            response = Response()
            response.status_int = 404
            return response(environ, start_response)

        # before middlewares
        for before in self.befores:
            response = before(request)
            if response is not None:
                return self.render_response(environ, start_response, response)

        # run view
        response = view_fn(request)
        if isinstance(response, dict):
            response = Response(json=response)

        # after middlewares
        for after in self.afters:
            a_response = after(request, response)
            if a_response is not None:
                return self.render_response(environ, start_response, response)

        # Support dict as view/middleware response
        return self.render_response(environ, start_response, response)
开发者ID:rochacon,项目名称:punch,代码行数:32,代码来源:app.py

示例6: __call__

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
    def __call__(self, environ, start_response):
        relative_urls = asbool(self.config.get('adhocracy.relative_urls',
                                               'false'))
        environ['adhocracy.domain'] = self.domain
        instance_key = self.config.get('adhocracy.instance')
        if instance_key is None:
            if relative_urls:
                path = environ.get('PATH_INFO', '')
                if path.startswith('/i/'):
                    instance_key = path.split('/')[2]
                    environ['PATH_INFO'] = path[len('/i/' + instance_key):]
                    if environ['PATH_INFO'] == '':
                        response = Response()
                        if instance_key == '':
                            response.status_int = 404
                            # Double slashes are stripped, so we can't redirect
                            # to /i//
                            return response(environ, start_response)

                        response.status_int = 302
                        response.headers['location'] = path + '/'
                        return response(environ, start_response)
            else:
                host = environ.get('HTTP_HOST', "")
                host = host.replace(self.domain, "")
                host = host.replace('localhost', "")
                host = host.split(':', 1)[0]
                host = host.strip('.').strip()
                instance_key = host

        if instance_key:  # instance key is set (neither None nor "")
            instance = model.Instance.find(instance_key)
            if instance is None:
                if (not relative_urls) and instance_key == 'www':
                    log.debug("No such instance: www, defaulting to global!")
                else:
                    response = Response()
                    response.status_int = 404
                    return response(environ, start_response)
            else:
                model.instance_filter.setup_thread(instance)
        try:
            return self.app(environ, start_response)
        finally:
            model.instance_filter.setup_thread(None)
开发者ID:rowanthorpe,项目名称:adhocracy,代码行数:47,代码来源:discriminator.py

示例7: DELETE

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
 def DELETE(self, request, start_response):
     uid = request.environ['selector.vars']['uid']
     res = Response(content_type='application/json')
     uid = self.get_uid(request)
     if self.rtree(request).get(uid):
         del self.rtree(request)[uid]
     else:
         res.status_int = 404
     return res
开发者ID:whitmo,项目名称:psid,代码行数:11,代码来源:app.py

示例8: GET

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
 def GET(self, request, start_response):
     res = Response(content_type='application/json')
     index = self.rtree(request)
     uid = self.get_uid(request)
     bounds = index.get(uid)
     if bounds is None:
         res.status_int = 404
         return res
     res.body = simplejson.dumps(dict(id=uid, bbox=bounds))
     return res
开发者ID:whitmo,项目名称:psid,代码行数:12,代码来源:app.py

示例9: render

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
 def render(self, controller, action, format, status, dict):
     '''
     Method gets fallowing arguments: controller, action, format, code, dict
     '''
     template = '{0}/{1}.{2}'.format(controller, action, format)
     content = self.engine.render(template=template, dict=dict)
     response = Response()
     response.status_int = status
     response.unicode_body = content
     return response
开发者ID:lukaszsliwa,项目名称:genius,代码行数:12,代码来源:view.py

示例10: __call__

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
    def __call__(self, environ, start_response):
        if environ['wsgi.multiprocess']:
            raise RuntimeError(
                "The DebugMiddleware middleware is not usable in a "
                "multi-process environment"
            )

        if environ.get('paste.testing'):
            return self.app(environ, start_response)

        # initiate a PDB session if requested
        global __debug_environ__
        debugging = environ['PATH_INFO'] == '/__pecan_initiate_pdb__'
        if debugging:
            PdbMiddleware(self.app, self.debugger)(
                __debug_environ__, start_response
            )
            environ = __debug_environ__

        try:
            return self.app(environ, start_response)
        except:
            # save the environ for debugging
            if not debugging:
                __debug_environ__ = environ

            # get a formatted exception
            out = StringIO()
            print_exc(file=out)

            # get formatted WSGI environment
            formatted_environ = pformat(environ)

            # render our template
            result = debug_template.render(
                traceback=out.getvalue(),
                environment=formatted_environ,
                pecan_image=pecan_image,
                xregexp_js=xregexp_js,
                syntax_js=syntax_js,
                brush=brush,
                syntax_css=syntax_css,
                theme=theme,
                debugging=debugging
            )

            # construct and return our response
            response = Response()
            response.status_int = 400
            response.unicode_body = result
            return response(environ, start_response)
开发者ID:SvenDowideit,项目名称:clearlinux,代码行数:53,代码来源:debug.py

示例11: __call__

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
 def __call__(self, environ, start_response):
     req = Request(environ)
     resp = Response()
     filename = req.path_info.strip('/')
     lfilename = filename.lower()
     if not req.path_info.strip('/') or os.path.isdir(filename):
         if filename:
             filename = path(filename, 'index.html')
         else:
             filename = 'index.html'
         body = open(filename, 'rb').read()
         resp.body = body
     elif os.path.isfile(filename):
         if req.method.lower() == 'delete':
             sh.rm(filename + '*', shell=True)
             resp = exc.HTTPNoContent()
             return resp(environ, start_response)
         if req.path_info.endswith('.metadata'):
             cfg = ConfigObject(filename=filename)
             if req.method.lower() == 'get':
                 resp.content_type = 'application/json'
             elif req.method.lower() == 'put':
                 data = json.loads(req.body)
                 cfg.metadata.update(data)
                 cfg.write()
             metadata = dict(cfg.metadata.items())
             metadata.update(tags=cfg.metadata.tags.as_list())
             resp.body = json.dumps(metadata)
         elif req.path_info.endswith('.js'):
             resp.content_type = 'text/javascript'
         elif req.path_info.endswith('.json'):
             resp.content_type = 'application/json'
         elif req.path_info.endswith('.css'):
             resp.content_type = 'text/css'
         elif lfilename.endswith('.jpg'):
             resp.charset = None
             resp.content_type = 'image/jpeg'
         print(filename)
         if not resp.content_length:
             resp.app_iter = fd(filename)
     elif req.path_info.startswith('/delete/'):
         filename = req.path_info[8:-1]
         self.delete(filename)
         resp.status_int = 302
         resp.location = '/' + path.dirname(filename)
     else:
         resp.body = str(req.path_info)
     resp.last_modified = datetime.now()
     return resp(environ, start_response)
开发者ID:gawel,项目名称:pypics,代码行数:51,代码来源:serve.py

示例12: make_response

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
def make_response(uri, environ):
    
    res = Response(conditional_response=True)
    
    # check if the host is online. If not raise an http error
    if not pingSMB( parseSMBuri(uri)["host"] ):
        return HTTPGatewayTimeout("Host is currently offline. You may try again at a later time.")
    
    try:
        f = c.open(uri)
    except smbc.NoEntryError:
        return HTTPNotFound("The file you requested is no longer available!")
    
    fs = f.fstat()
    filesize = fs[6]
    last_modified = fs[8] # mtime
    filename = uri.split("/")[-1]
    req = Request(environ)
    log.debug("Incoming request: \n" + str(req))
    
    if req.range:
        log.debug("begin ranged transfer")
        res.status_int = 206
        res.content_range = req.range.content_range(filesize)
        (start, stop) = req.range.range_for_length(filesize)
        
        log.debug("filesize: " + str(filesize))
        log.debug("start: " + str(start)  + "   stop: " + str(stop))
        log.debug("Content-Range: " + str(res.content_range))
        
        res.app_iter = FileIterable(uri, start=start, stop=stop)
        res.content_length = stop - start
    
    else:
        log.debug("begin normal transfer")
        res.app_iter = FileIterable(uri)
        res.content_length = filesize
    
    log.debug("Content-Length: " + str(res.content_length))
    
    res.server_protocol = "HTTP/1.1"
    # Make sure the file gets downloaded and not played live
    res.content_type = "application/octet-stream"
    res.last_modified = last_modified
    res.etag = '%s-%s-%s' % (fs[8], fs[6], hash(f))
    res.headers.add("Content-Disposition", 'attachment; filename="%s"' % str(filename) )
    res.headers.add("Accept-Ranges", "bytes")
    return res
开发者ID:agrynchuk,项目名称:noodle-ng,代码行数:50,代码来源:smbfileapp.py

示例13: __call__

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
 def __call__(self, environ, start_response):
     req = Request(environ)
     path = req.path.split('/')
     assert path[1] and not path[0]
     res = Response()
     try:
         handler = getattr(self, '_handle_' + path[1])
     except AttributeError:
         res.status_int = 404
     else:
         args = path[2:]
         # XXX assumes no unquoting necessary
         kw = dict((str(k),
             True if v == 'True' else
             False if v == 'False' else
             str(v)) for k, v in req.GET.iteritems())
         handler(req, res, *args, **kw)
     return res(environ, start_response)
开发者ID:imclab,项目名称:laeproxy,代码行数:20,代码来源:test.py

示例14: _read_object

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
    def _read_object(self, env, start_response, headers):

        req = Request(env)
        os_res = req.get_response(self.app)

        cdmi_version = env.get('HTTP_X_CDMI_SPECIFICATION_VERSION', False)
        # If this is not a CDMI content request, simply return the response
        if not cdmi_version:
            return os_res

        # For CDMI content request, more work need to be done.
        res = Response()
        # Set up CDMI required headers
        res.headers[Consts.CDMI_VERSION] = Consts.CDMI_VERSION_VALUE
        res.headers['Content-Type'] = Consts.CDMI_APP_OBJECT

        object_body = os_res.body
        # Build the response message body according to CDMI specification
        body = {}

        # Setup required attributes for response body
        body['objectType'] = Consts.CDMI_APP_OBJECT
        body['objectName'] = self.object_name
        body['parentURI'] = concat_parts(self.account_name,
                                         self.parent_name) + '/'
        body['capabilitiesURI'] = concat_parts(self.cdmi_capability_id,
                                               self.account_name,
                                               self.container_name,
                                               self.parent_name,
                                               self.object_name) + '/'
        body['completionStatus'] = 'Complete'
        body['metadata'] = {}

        # Handling CDMI metadata
        body['metadata'] = self._process_metadata(headers)
        body['mimetype'] = headers.get('content-type', '')
        body['valuetransferencoding'] = \
            headers.get(Consts.VALUE_ENCODING, 'utf-8')
        body['valuerange'] = '0-' + str(len(object_body))
        body['value'] = object_body
        res.body = json.dumps(body, indent=2)
        res.status_int = 200

        return res
开发者ID:litong01,项目名称:cdmi,代码行数:46,代码来源:cdmicommoncontroller.py

示例15: respond

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import status_int [as 别名]
    def respond(self, request):
        address_parts = dict(scheme=self.scheme,
                             host=self.host,
                             port=self.port,
                             path=request.path,
                             )
        address = "{scheme}://{host}:{port!s}{path}".format(**address_parts)

        # TODO Use HTTP cache-control headers.

        # Request the information from our proxy
        resp, content = self.http.request(address)
        status = int(resp['status'])
        del resp['status']
        response = Response()
        response.status_int = status
        response.headerlist = resp.items()
        response.body = content
        return response
开发者ID:pumazi,项目名称:pypiproxy,代码行数:21,代码来源:main.py


注:本文中的webob.Response.status_int方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。