У меня есть интерфейс REST, написанный с использованием Python/Bottle, который обрабатывает файлы, обычно большие. API будет вибрировать таким образом, чтобы:
Клиент отправляет PUT с файлом в качестве полезной нагрузки. Помимо прочего, он отправляет заголовки даты и авторизации. Это мера безопасности против повторных атак - запрос сменяется временным ключом, используя целевой URL, дату и несколько других вещей.
Теперь проблема. Сервер принимает запрос, если предоставленная дата указана в окне даты и времени в 15 минут. Если загрузка занимает достаточно много времени, она будет длиннее, чем разрешенная временная дельта. Теперь обработка авторизации запроса выполняется с использованием декоратора на методе просмотра бутылки. Тем не менее, бутылка не начнет процесс отправки, если загрузка не будет завершена, поэтому проверка не удастся при более длительной загрузке.
Мой вопрос: есть ли способ объяснить бутылке или WSGI для немедленного обращения с запросом и потоковой загрузкой по мере ее поступления? Это было бы полезно для меня и по другим причинам. Или любые другие решения? Поскольку я пишу это, связующее ПО WSGI приходит на ум, но тем не менее я бы хотел получить внешнее понимание.
Я бы хотел переключиться на Flask или даже на другие структуры Python, так как интерфейс REST довольно легкий.
Спасибо