Декоратор на VDS не видит заголовок

Рейтинг: 0Ответов: 0Опубликовано: 16.03.2023

Написал декоратор на проверку секретного ключа в заголовке.

Тестирую через Postman:

  • на локальной машине все прекрасно отрабатывает
  • на VDS декоратор не видит содержимое заголовка

Даже в обратку кинул и там не видно того, что я отправляю в заголовке. Куда копать?

import functools
from flask import request, jsonify


def wrapers_api_key(func):
    """Проверяет наличие и валидность секретного ключа в заголовке"""

    @functools.wraps(func)
    def verification_root_wraper(*args, **kwargs):
        if (SECRET_KEY_API := request.headers.get('SECRET_KEY_API', None)) is None or SECRET_KEY_API != \
                app.config['SECRET_KEY_API']:
            return jsonify({'error': 'Access is denied',
                            'request.headers': str(request.headers)})
        return func(*args, **kwargs)

    return verification_root_wraper


@app.route('/api/test', methods=['POST'])
@wrapers_api_key
def api_test():
    if request.method == "POST":
        return jsonify({'status': True})

UPD (Конфиг Nginx):

server {
    listen 80;
    server_name DOMEN.ru www.DOMEN.ru;
    return 301 https://$host:443$request_uri;

    include /etc/nginx/snippets/error_page.conf;
}

server {
    listen 443 ssl;
    server_name DOMEN.ru www.DOMEN.ru;

    ssl on;
    ssl_certificate /etc/letsencrypt/live/DOMEN.ru/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/DOMEN.ru/privkey.pem;

    location / {
        include proxy_params;
        proxy_pass http://unix:/home/USER_DIR/APP_DIR/APP.sock;
    }

    include /etc/nginx/snippets/error_page.conf;
}

UPD2: Содержимое proxy_params:

proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

Содержимое error_page.conf

error_page 413 /413.html;

location = /413.html {
                      root /usr/share/nginx/html;
                      internal;
                     }

Ответы

Ответов пока нет.