У меня Swagger UI, сгенерированный через Flask Restplus.
Я недавно установил Basic Auth на свою локальную машину, и все отлично работает.Однако при установке на рабочий сервер (httpd
и mod_wsgi
) заголовки запроса полностью отсутствуют.
Я использовал второй показанный метод здесь .
Мои авторизации выглядят так:
authorizations = {
'Basic Auth': {
'type': 'basic',
'in': 'header',
'name': 'Authorization'
},
}
Затем на моей конечной точке я получаю имя пользователя и пароль, например:
encoded_auth_header = request.headers['Authorization'].split()[1]
username, password = b64decode(encoded_auth_header).split(':')
Только на рабочем сервере выдается ошибка:
return _unicodify_header_value(self.environ['HTTP_' + key]
KeyError: HTTP_AUTHORIZATION
Сначала я подумал, что, может быть, это разница между 'A' и 'a' в requests.headers['Authorization']
(как ни странно, обе они работают на моей локальной машине, хотя это заглавная буква 'A'в' Авторизация ')
Так что я попытался просто напечатать весь вывод заголовков запроса, чтобы проверить вещи.Оказывается, ключ авторизации полностью отсутствует!
Пользовательский агент, тип контента и т. Д. Все здесь ... просто отсутствует часть авторизации.
Как я могу это исправить?