当前位置: 首页 > news >正文

云浮网站建设seo基础

云浮网站建设,seo基础,hao爱做网站,房产机构网站建设对于springboot加vue项目中 vue前端页面,在发送请求时,如:axios.get(‘/api/thing/list’)如果是相对地址,前端会自动拼接前端所运行的地址如http://localhost:5173/api/thing/list但是如果你在vite.config.js中配置了…

对于springboot加vue项目中

vue前端页面,在发送请求时,如:axios.get(‘/api/thing/list’)如果是相对地址,前端会自动拼接前端所运行的地址如http://localhost:5173/api/thing/list但是如果你在vite.config.js中配置了代理

  server: {proxy: {'/api': {target: 'http://localhost:9100', // 后端地址changeOrigin: true,rewrite: (path) => path.replace(/^\/api/, ''), // 可选:是否移除 /api 前缀}}}

那么

  • 代理行为

    • 当浏览器请求 http://localhost:5173/api/thing/list 时,Vite 服务器会拦截该请求。

    • 代理到 http://localhost:9100/api/thing/list(如果没配置 rewrite)。

    • 如果配置了 rewrite: (path) => path.replace(/^\/api/, ''),则代理到 http://localhost:9100/thing/list

前提是:你写的前端请求时相对地址,不是完整的路径,如果你的前端请求写的是完整 URL(如 http://127.0.0.1:9100/api/thing/list),Vite 代理不会生效。

如果你在前端代码中 直接写完整的后端地址(如 http://127.0.0.1:9100/api/thing/list),一定会触发 CORS 跨域问题,因为:


1. 为什么会出现 CORS 问题?

  • 浏览器同源策略:当你的前端页面运行在 http://localhost:5173,而请求发往 http://127.0.0.1:9100 时:

    • 协议 (http)、域名 (localhost vs 127.0.0.1)、端口 (5173 vs 9100三者任一不同,均会被视为跨域。

    • 即使 localhost 和 127.0.0.1 指向同一台机器,浏览器仍会认为它们是不同源!

  • 触发条件
    浏览器会先发送一个 OPTIONS 预检请求(Preflight),如果后端没有返回正确的 CORS 响应头(如 Access-Control-Allow-Origin),请求会被拦截。

2. 如何解决?

方案 1:改用 Vite 代理(推荐)
  • 优势:前端代码只需写相对路径(如 /api/thing/list),由 Vite 代理转发到后端,规避跨域问题

  • 配置

    javascript

    复制

    下载

    // vite.config.js
    export default defineConfig({server: {proxy: {'/api': {target: 'http://127.0.0.1:9100', // 后端地址changeOrigin: true,rewrite: (path) => path.replace(/^\/api/, ''), // 可选:去掉 /api 前缀}}}
    });
  • 前端代码

    javascript

    复制

    下载

    // ✅ 会被代理到 http://127.0.0.1:9100/thing/list
    axios.get('/api/thing/list');
方案 2:后端配置 CORS(需修改后端代码)

如果必须直接请求 http://127.0.0.1:9100,后端需添加以下响应头:

java

复制

下载

// Spring Boot 示例
@Configuration
public class CorsConfig implements WebMvcConfigurer {@Overridepublic void addCorsMappings(CorsRegistry registry) {registry.addMapping("/**").allowedOrigins("http://localhost:5173") // 允许的前端地址.allowedMethods("*").allowCredentials(true);}
}
方案 3:修改前端请求地址(临时方案)
  • 将 127.0.0.1 改为 localhost,确保域名一致:

    javascript

    复制

    下载

    // ✅ 如果后端和前端都用 localhost,可能避免跨域(但端口仍需一致)
    axios.get('http://localhost:9100/api/thing/list');
  • 局限性
    如果端口不同(如前端 5173,后端 9100),仍需代理或 CORS。

http://www.wangmingla.cn/news/90054.html

相关文章:

  • 武汉 外贸网站建设百度网盘怎么找片
  • 阿里云 网站备案泰州seo
  • 免费网站可以做淘宝客吗市场营销说白了就是干什么的
  • 做天猫网站要多少钱腰肌劳损的自我治疗和恢复的方法有什么?
  • 网站建设课程毕设2345导网址导航下载
  • 网站建设与管理论文的总结公司网站域名续费一年多少钱
  • 网站门户建设流程推广联系方式
  • 医院网站建设公司价格低seo标题关键词优化
  • 政府门户网站集约化建设的探索百度seo培训课程
  • 英文外贸网站建设网站设计方案只要做好关键词优化
  • 网站建设管理相关规定百度一下官网首页登录
  • 选做旅游网站的课题分析单页关键词优化费用
  • 成品网站建设哪家好怎么做网络宣传推广
  • 用ps做网站画布一般建多大长春做网站推广的公司
  • 旅游 网站开发的项目描述免费申请网站com域名
  • seo 网站结构独立站seo搜索优化
  • 温州市城建设计院网站太原搜索引擎优化招聘信息
  • 武汉app软件开发公司seo优化主要工作内容
  • 企业做网站营销的四大途径长沙网络推广外包
  • 茶网站源码千锋教育培训机构可靠吗
  • 网站管理页面最全磁力搜索引擎
  • 设计师培训大纲做网络优化哪家公司比较好
  • 鸡泽企业做网站推广互联网怎么打广告推广
  • 网站推广策划思路与执行优秀营销软文范例500字
  • 网站结构逻辑结构给你一个网站怎么优化
  • 服务器iis做网站seo关键词排名优化app
  • 做网站还要写文章吗千锋教育官网
  • 青岛网站建设seoseo网络优化公司哪家好
  • 网站开发宣传广告网络营销的特点分别是
  • 濮阳网站制作搜索关键词查询