Я учусь на игрушечном проекте, используя Vue. Во время разработки я делал запросы API, используя ax ios из внешнего интерфейса, и столкнулся с проблемой CORS. Я был бы очень признателен, если бы вы могли дать мне некоторую информацию.
Доступ к XMLHttpRequest по адресу "..." из источника "http://localhost: 8080 'заблокирован Политика CORS: Ответ на запрос предварительной проверки не проходит проверку контроля доступа: в запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».
Я знаю, что проблемы CORS вызваны безопасностью проблемы, когда запрашиваемый домен и отвечающий домен различаются. Это так?
Во всяком случае, я видел информацию для ввода «Access-Control-Allow-Origin»: «*» в заголовке запроса, но это не сработало.
Итак Я искал дополнительную информацию. В результате я создал сервер express и настроил прокси-сервер для проекта vue, как показано ниже.
//vue.config.js
module.exports = {
outputDir:"backend/public",
assetsDir:"assets",
configureWebpack: {
devtool: 'source-map'
},
devServer: {
proxy: {
'/api': {
target: 'http://localhost:3000/api',
changeOrigin: true,
pathRewrite: {
'^/api': ''
}
}
}
}
}
И я просто применил пример кода basi c, предоставленный сайтом API. в среду по умолчанию express.
Единственное, что изменилось
- Не запрашивается из внешнего интерфейса. (Запрос был сделан на бэкэнде (express).)
- Я использовал модуль запроса, а не ax ios.
Почему нет происходит ошибка CORS, когда я делаю запрос API на серверной части (express)?