예제 #1
0
def status_code(code):
    """Returns response object of given status code."""

    redirect = dict(headers=dict(location=REDIRECT_LOCATION))

    code_map = {
        301:
        redirect,
        302:
        redirect,
        303:
        redirect,
        304:
        dict(data=''),
        305:
        redirect,
        307:
        redirect,
        401:
        dict(headers={'WWW-Authenticate': 'Basic realm="Fake Realm"'}),
        402:
        dict(data='F**k you, pay me!',
             headers={'x-more-info': 'http://vimeo.com/22053820'}),
        406:
        dict(data=json.dumps({
            'message': 'Client did not request a supported media type.',
            'accept': ACCEPTED_MEDIA_TYPES
        }),
             headers={'Content-Type': 'application/json'}),
        407:
        dict(headers={'Proxy-Authenticate': 'Basic realm="Fake Realm"'}),
        418:
        dict(  # I'm a teapot!
            data=ASCII_ART,
            headers={'x-more-info': 'http://tools.ietf.org/html/rfc2324'}),
    }

    r = Response()
    r.status_code = code

    if code in code_map:

        m = code_map[code]

        if 'data' in m:
            r.data = m['data']
        if 'headers' in m:
            r.headers = m['headers']

    return r
예제 #2
0
def status_code(code):
    """Returns response object of given status code."""

    redirect = dict(headers=dict(location=REDIRECT_LOCATION))

    code_map = {
        301: redirect,
        302: redirect,
        303: redirect,
        304: dict(data=''),
        305: redirect,
        307: redirect,
        401: dict(headers={'WWW-Authenticate': 'Basic realm="Fake Realm"'}),
        402: dict(
            data='F**k you, pay me!',
            headers={
                'x-more-info': 'http://vimeo.com/22053820'
            }
        ),
        406: dict(data=json.dumps({
            'message': 'Client did not request a supported media type.',
            'accept': ACCEPTED_MEDIA_TYPES
            }),
            headers={
                'Content-Type': 'application/json'
            }),
        407: dict(headers={'Proxy-Authenticate': 'Basic realm="Fake Realm"'}),
        418: dict(  # I'm a teapot!
            data=ASCII_ART,
            headers={
                'x-more-info': 'http://tools.ietf.org/html/rfc2324'
            }
        ),

    }

    r = Response()
    r.status_code = code

    if code in code_map:

        m = code_map[code]

        if 'data' in m:
            r.data = m['data']
        if 'headers' in m:
            r.headers = m['headers']

    return r
예제 #3
0
파일: core.py 프로젝트: mtingxie/bustard
def random_bytes(request, n):
    """Returns n random bytes generated with given seed."""
    n = int(n)
    n = min(n, 100 * 1024)  # set 100KB limit

    params = CaseInsensitiveDict(request.args.items())
    if 'seed' in params:
        random.seed(int(params['seed']))

    response = Response()

    # Note: can't just use os.urandom here because it ignores the seed
    response.data = bytearray(random.randint(0, 255) for i in range(n))
    response.content_type = 'application/octet-stream'
    return response
예제 #4
0
def random_bytes(request, n):
    """Returns n random bytes generated with given seed."""
    n = int(n)
    n = min(n, 100 * 1024)  # set 100KB limit

    params = CaseInsensitiveDict(request.args.items())
    if 'seed' in params:
        random.seed(int(params['seed']))

    response = Response()

    # Note: can't just use os.urandom here because it ignores the seed
    response.data = bytearray(random.randint(0, 255) for i in range(n))
    response.content_type = 'application/octet-stream'
    return response