Я пытаюсь заставить CORS работать на моем сервере AWS Lambda с использованием Serverless.Сейчас у меня есть два субдомена (api.site.co и app.site.co).
В моем файле app.js на Express я установил CORS и включил его следующим образом:
app.use(
cors({
origin: 'https://app.site.co',
optionsSuccessStatus: 200,
}),
);
app.options('*', cors());
И затем, используя модуль Axios в React, я делаю этот вызов:
axios
.post('/users/register', user)
.then(res => history.push('/login'))
.catch((err) => {
dispatch({
type: GET_ERRORS,
error: err.response.data,
});
});
Кроме того, в моем файле app.js для клиентского приложения:
axios.defaults.baseURL = 'https://api.site.co';
При отправке любого запроса я получаю эту ошибку:
Access to XMLHttpRequest at 'https://api.site.co/users/register' from origin 'https://app.site.co' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Итак, я также пытался изменить конфигурацию CORS на:
app.use(cors());
app.options('*', cors());
Но я все еще получаю ту же ошибку.
Есть предложения, как решить эту проблему?