前端axios的url设置为后端接口,双方端口不一致,出现前后端跨域问题。
解决方法:
1. 修改 vite.config.js
export default defineConfig({
plugins: [
vue(),
],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
}
},
//在此处添加代理配置
server: {
proxy: {
'/api': {
target: 'http://localhost:8089',
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '/')
}
}
}
})
2. 修改axios的url,就能成功发送请求了
let url = "/api/user/login"
当然,其他博客也提到修改url根目录
修改main.js
import axios from 'axios'
axios.defaults.baseURL = '/api'
axios的url就改为
let url = "/user/login"