前端webpack、vite搭建的项目如何解决跨域
2023-12-13 10:45:03
首先,跨域问题的控制台报错如下:
Access to XMLHttpRequest at 'https://exsample.com/api/wx/haha/yaya' from origin 'http://localhost:5173' 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.
关键词 Access-Control-Allow-Origin
这样的报错就是跨域问题了。那么,在前端如何解决跨域呢?
可以配置反向代理服务器。
一、vite搭建的项目:
需在vite.config.ts文件中添加如下代码:
proxy: {
'/api': {
target: '', // 后台服务地址
ws: true,
changeOrigin: true, //是否跨域
rewrite: (path) => path.replace(/^\/api/, '')
}
},
要写在server的配置中
import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import path from 'path';
import postcsspxtoviewport from "postcss-px-to-viewport"
export default defineConfig({
...................
server: {
port: 5173, //这是为了让vite搭建的项目也能在公网上运行
host: "0.0.0.0",
// 配置反向代理,解决跨域
proxy: {
'/api': {
target: '', // 后台服务地址以及端口号
ws: true,
changeOrigin: true, //是否跨域
rewrite: (path) => path.replace(/^\/api/, '')
}
},
},
base: "/report-manager/"
.......................
})
二、webpack搭建的项目
需在config文件夹下面的webpackDevServer.config.ts(若原本项目中没有,就自己新建一个)文件中添加配置。
proxy: {
'/api': {
target: '', // 后台服务地址
ws: true,
changeOrigin: true, //是否跨域
pathRewrite: { '^/api': '/' }
}
},
文章来源:https://blog.csdn.net/qq_52181663/article/details/134824283
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!