You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
892 B
Python
35 lines
892 B
Python
2 years ago
|
# Critical evaluation of crunchiness
|
||
|
|
||
|
from flask import Flask, render_template, url_for, request, redirect
|
||
|
|
||
|
|
||
|
# --------- Flask --------- #
|
||
|
|
||
|
class PrefixMiddleware(object):
|
||
|
def __init__(self, app, prefix=""):
|
||
|
self.app = app
|
||
|
self.prefix = prefix
|
||
|
|
||
|
def __call__(self, environ, start_response):
|
||
|
|
||
|
if environ["PATH_INFO"].startswith(self.prefix):
|
||
|
environ["PATH_INFO"] = environ["PATH_INFO"][len(self.prefix):]
|
||
|
environ["SCRIPT_NAME"] = self.prefix
|
||
|
return self.app(environ, start_response)
|
||
|
else:
|
||
|
start_response("404", [("Content-Type", "text/plain")])
|
||
|
return ["This url does not belong to the app.".encode()]
|
||
|
|
||
|
app = Flask(__name__)
|
||
|
app.wsgi_app = PrefixMiddleware(app.wsgi_app, prefix='/soupboat/crunch')
|
||
|
|
||
|
|
||
|
@app.route('/')
|
||
|
def index():
|
||
|
return render_template('index.html')
|
||
|
|
||
|
|
||
|
app.run(port=3140)
|
||
|
|
||
|
|