app.url_map.converters['regex'] = RegexConverter def response_body(mimetype): if mimetype.endswith('html'): return '' if mimetype.endswith('json'): return '{}' def create_handler(path, code): def f(*args, **kwargs): mimetype = request.accept_mimetypes\ .best_match(['application/json', 'text/html']) response = Response(response_body(mimetype), status=code, mimetype=mimetype) return response return f for code, msg in HTTP_STATUS_CODES.iteritems(): path = '/%s<regex(".+"):path>' % (code) app.add_url_rule(path, msg, create_handler(path, code), methods=['GET', 'POST', 'PUT', 'DELETE']) if __name__ == "__main__": app.run(port=8888, host='0.0.0.0', use_debugger=True, debug=True, use_reloader=True)