Один из способов добиться того, что вы хотите сделать, это использовать регулярные выражения в вашем URL и проверить атрибут в вашем обработчике методов.
Пример URL для отображения
url_patterns = [
# here we want to map url1 url2 and url
(r"/url([1|2])/", OneAndTwoHandler),
]
И пример соответствующего обработчика
class OneAndTwoHandler(CustomRequestHandler):
def get(self, my_param, *args, **kwargs):
if my_param == '2':
raise HTTPError(405)
# code for only the first url here...
def post(self, entry, *args, **kwargs):
if my_param == '1':
raise HTTPError(405)
# code for only the first url here...
Я бы отобразил параметры my_param в словарь, чтобы все было понятно и чтобы я не мог погрузиться в обработчик, если мне нужно изменить эти значения или добавить новые URL.
my_dict_urls = {
'get': (1,2,3,4),
'post': (3,5)
}
if int(my_param) not in my_dict_urls.get('get'):
# ...