summaryrefslogtreecommitdiff
path: root/day7/backend.py
diff options
context:
space:
mode:
authorAndrew <saintruler@gmail.com>2019-05-24 18:42:16 +0400
committerAndrew <saintruler@gmail.com>2019-05-24 18:42:16 +0400
commit11979f1e220587198ba05fd3c1f88d4f81195fff (patch)
tree7161944a8935b3574ff6d044d123e9c8d1ed437f /day7/backend.py
parent0f0e815ad1b775ff93699b695f290c562c57962f (diff)
Обновлена главная страница, изменен шаблонизатор.
Парсинг HTTP запросов стал более строгим. Сервер заканчивает работу при невалидном HTTP запросе. Начата работа над документацией.
Diffstat (limited to 'day7/backend.py')
-rw-r--r--day7/backend.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/day7/backend.py b/day7/backend.py
index 9f9b118..99a62bd 100644
--- a/day7/backend.py
+++ b/day7/backend.py
@@ -1,7 +1,7 @@
import re
from templater import render_template
-from utils import parse_cookies, add_headers, SUCCESS, BAD_REQUEST, NOT_FOUND
+from utils import parse_cookies, add_headers, SUCCESS, BAD_REQUEST, NOT_FOUND, HTTP_METHODS
from config import TEXT_TEMPLATE_NAME
import db
@@ -34,7 +34,7 @@ def route(url_format, methods=None):
def run(method, url: str, cookies: dict, query):
- res = NOT_FOUND, NOT_FOUND + 'KAVO'
+ res = NOT_FOUND, NOT_FOUND
for key, value in cookies.items():
db.set_cookie(key, value)
@@ -45,6 +45,11 @@ def run(method, url: str, cookies: dict, query):
return add_headers(*res)
+@route('/.*', list(set(HTTP_METHODS) ^ {'GET', 'POST'}))
+def fallback_wrong_method(query, *args):
+ return NOT_FOUND, 'This method is not allowed'
+
+
@route('/')
def index_get(query, *args):
return SUCCESS, render_template('form', color=get_color())