From 337fa135dc322e356754cf5b5c1fc337ca80b97a Mon Sep 17 00:00:00 2001 From: Kyle Conroy Date: Sat, 29 Oct 2011 11:40:50 -0700 Subject: [PATCH] Rename the stream endpoint and provide more output per message --- httpbin/core.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/httpbin/core.py b/httpbin/core.py index 970eaa6..d7fa34b 100644 --- a/httpbin/core.py +++ b/httpbin/core.py @@ -6,6 +6,7 @@ httpbin.core This module provides the core HttpBin experience. """ +import json import os import time from flask import Flask, Response, request, render_template, redirect, jsonify @@ -147,15 +148,18 @@ def relative_redirect_n_times(n): return response -@app.route('/streaming/') -def http_streaming(n): - """Stream n messages""" - def generate(): - for row in xrange(n): - time.sleep(1) - yield str(row) + "\n" +@app.route('/stream/') +def stream_n_messages(n): + """Stream n JSON messages""" + response = get_dict('url', 'args', 'headers', 'origin') - return Response(generate(), headers={ + def generate_stream(): + for i in xrange(n): + response["id"] = i + yield json.dumps(response) + "\n" + time.sleep(1) + + return Response(generate_stream(), headers={ "Transfer-Encoding": "chunked", "Content-Type": "application/json", })