Заголовок авторизации не передан, хотя это разрешено - PullRequest
1 голос
/ 06 октября 2019

Мне не удается получить заголовок авторизации из запросов, которые я отправляю с помощью CORS, хотя я разрешил «Авторизация» в «Access-Control-Allow-Headers». Отправка почтальоном.

Перепробовал несколько разных методов запроса, включая: запрос, axios и qwest. Ни один из них не работает.

//Access Control in index.js before route.
app.use((req, res, next) => {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers", "Authorization,Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, Access-Control-Request-Headers, Cache-Control");
    res.header("Access-Control-Allow-Methods", "GET,HEAD,OPTIONS,POST,PUT")
    next();
});

Ожидаемый результат: Возвращение данных.

Фактический вывод:

403 Ошибка запрещена, поскольку сервер не может получить заголовок авторизациии ошибка: «Доступ к XMLHttpRequest по адресу« http://localhost:5000/api/cases/list?page=1&size=10' от источника »http://localhost:3000' заблокирован политикой CORS: Ответ на предпечатный запрос не проходит проверку контроля доступа: не имеет статуса HTTP ok. '

1 Ответ

0 голосов
/ 06 октября 2019

Переход на модуль cors для экспресса решил мою проблему. Я заменил весь этот блок на

app.use(cors({
    "origin": "*",
    "methods": "GET,HEAD,PUT,PATCH,POST,DELETE",
    "allowedHeaders": ['Authorization', 'Origin', 'X-Requested-With', 'Content-Type', 'Accept', 'Access-Control-Request-Method', 'Access-Control-Request-Headers', 'Cache-Control']
}))

, который работает. Действительно странная проблема, но я не буду пытаться выяснить, почему она не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...