Axios запрос не работает(CORS)
Следующий запрос Axios произведенный через локальный сервер на Redux не работает, выдавая CORS ошибку:
axios.post('url_сервера', qs.stringify({
"username": "123",
"password": "123",
"repassword": "123"
}, {
headers: {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
},
}))
При этом запрос выполняется через Postman, и даже следующий python код:
import requests
from requests.structures import CaseInsensitiveDict
url = "url_сервера"
headers = CaseInsensitiveDict()
headers["Accept"] = "application/json"
headers["Content-Type"] = "application/x-www-form-urlencoded"
data = "username='123'&password='123'&repassword='123'"
resp = requests.post(url, headers=headers, data=data)
print(resp.content)
Доступ к серверу отсутствует от слова совсем. Может дело в каких нибудь загаловках или чем нибудь подобным?
Ошибка:
Ответ в сети:
Ответы (1 шт):
Дело действительно в заголовках. Следуя статье на mdn сервер, на который вы отправляете запросы, должен в заголовках ответа на запрос методом OPTIONS отправлять Access-Control-Allow-Origin (в вашем случае значение должно быть localhost:3000) и Access-Control-Allow-Methods (для запроса из примера значение должно быть POST).
Если у вас нет доступа к серверу и возможности добавить в его ответ заголовки, браузер из соображений безопасности не позволит вам делать на него запросы. Возможным выходом в такой ситуации может стать контролируемый вами прокси-сервер. Например, тот сервер, который запущен у вас локально на порте 3000 или webpack-dev-server.

