CORS-заголовки не отображаются в моих запросах/ответах на Django
Я сделал следующую реализацию CORS в моем Django проекте, используя django-cors-headers.
CORS_ORIGIN_ALLOW_ALL = False
CORS_ALLOWED_ORIGINS = []
MIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
....
]
INSTALLED_APPS = [
...
'corsheaders',
]
По какой-то причине я не вижу эффекта от этих заголовков (у меня нет Access-Control-Allow-Origin
в заголовках). Я распечатываю заголовки запроса и ответа в своем представлении. Вот мое представление:
def payment(request, *args, **kwargs):
print(request.headers)
params_in = json.loads(request.body.decode('utf-8'))
headers_in = {
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': 'Bearer key,
}
response = requests.post('https://url.com/v1/endpoint',
headers=headers_in,
data=params_in)
resp_out = Response(response.json()['value'])
print(resp_out.headers)
return resp_out
Мои заголовки запроса ['Host', 'Connection', 'Content-Type', 'Origin', 'Accept-Encoding', 'Cookie', 'Accept', 'User-Agent', 'Referer', 'Accept-Language', 'X-Request-Id', 'X-Forwarded-For', 'X-Forwarded-Proto', 'X-Forwarded-Port', 'Via', 'Connect-Time', 'X-Request-Start', 'Total-Route-Time', 'Content-Length']
и единственный resp_out
заголовок 'Content-Type'
.
Почему это может быть? Что я упускаю?
Вы не получаете CORS-заголовки как часть запроса, а Access-Control-Allow-Origin: Your_Origin_Name
(если среди разрешенных, указанных в CORS_ALLOWED_ORIGINS = []
) будет отправлен обратно в качестве заголовка ответа.