示例#1
0
def stream_string():
    u'''Stream may consist of any common content, like words'''
    def generate():
        for w in u'Hello World, this is served from an extension'.split():
            yield w

    return streaming_response(generate())
示例#2
0
def stream_context():
    u'''Additional argument keep request context from destroying'''
    html = u'''{{ request.args.var }}'''

    def gen():
        yield flask.render_template_string(html)

    return streaming_response(gen(), with_context=True)
示例#3
0
def stream_template(**kwargs):
    u'''You can stream big templates as well.'''
    tpl = flask.current_app.jinja_env.get_template(u'stream.html')
    gen = tpl.stream(kwargs)
    # pass integer into `enable_buffering` to control, how many
    # tokens will consist in every response chunk.
    gen.enable_buffering()
    return streaming_response(gen)
示例#4
0
def stream_context():
    u'''Additional argument keep request context from destroying'''
    html = u'''{{ request.args.var }}'''

    def gen():
        yield flask.render_template_string(html)

    return streaming_response(gen(), with_context=True)
示例#5
0
def stream_template(**kwargs):
    u'''You can stream big templates as well.'''
    tpl = flask.current_app.jinja_env.get_template(u'stream.html')
    gen = tpl.stream(kwargs)
    # pass integer into `enable_buffering` to control, how many
    # tokens will consist in every response chunk.
    gen.enable_buffering()
    return streaming_response(gen)
示例#6
0
def stream_without_context():
    u'''You'll definitely get error attempting to get request info.'''
    html = u'''{{ request.args.var }}'''

    def gen():
        yield flask.render_template_string(html)

    # `with_context` set to False by default. Thus, you cannot use
    # request context in this case.
    return streaming_response(gen())
示例#7
0
def stream_without_context():
    u'''You'll definitely get error attempting to get request info.'''
    html = u'''{{ request.args.var }}'''

    def gen():
        yield flask.render_template_string(html)

    # `with_context` set to False by default. Thus, you cannot use
    # request context in this case.
    return streaming_response(gen())
示例#8
0
def stream_file():
    u'''File stream. Just do not close it until response finished'''
    f_path = path.join(path.dirname(path.abspath(__file__)),
                       u'tests/10lines.txt')

    def gen():
        with open(f_path) as test_file:
            for line in test_file:
                yield line

    return streaming_response(gen())
示例#9
0
def stream_file():
    u'''File stream. Just do not close it until response finished'''
    f_path = path.join(
        path.dirname(path.abspath(__file__)), u'tests/10lines.txt')

    def gen():
        with open(f_path) as test_file:
            for line in test_file:
                yield line

    return streaming_response(gen())
示例#10
0
def stream_string():
    u'''Stream may consist of any common content, like words'''
    def generate():
        for w in u'Hello World, this is served from an extension'.split():
            yield w
    return streaming_response(generate())