from flask import Flask from flask import request import re app = Flask(__name__) @app.route("/") def index(): with open("index.html", "r") as f: return f.read() @app.route("/gen", methods=['GET']) def content_generator(): len_param = request.args.get('len') total_size = -1 if re.match(r"^[0-9]+$", len_param): total_size = int(len_param) elif re.match(r"^[0-9]+k$", len_param): total_size = int(len_param[0:-1]) * 1024 elif re.match(r"^[0-9]+m$", len_param): total_size = int(len_param[0:-1]) * 1024 * 1024 if total_size <= 0: return "Invalid payload size", 400 generated_segment = bytearray() for i in range(0, 256): generated_segment.append(i) res = bytearray() while len(res) < total_size: remain = total_size - len(res) if remain >= len(generated_segment): res += generated_segment else: res += generated_segment[0:remain] return bytes(res)