前端解决跨域配置的 proxy?

作者站长头像
站长
· 阅读数 6

前端解决跨域配置的 proxy?

如图,这是我项目在 vite.config 的 server 配置。

问题1:为什么配置这样一段代码就解决跨域问题了呢?问题2:服务器和服务器之间的请求有没有跨域这样的存在呢?(我了解到的是跨域是浏览器的限制,是我理解错了吗)

(请大家把我当成一个网络小白,但不是特别小白 >.<)

回复
1个回答
avatar
test
2024-07-02

你的第二个问题的答案,也同时是第一个问题的答案。

跨域限制是浏览器的安全策略。除了浏览器以外的场景,HTTP 协议本身是没有跨不跨域这一说的。所以服务器和服务器之间自然没这个问题。

而你在开发环境下,实质是启动了一个本地的服务器(看到 proxy 上面的 server 字眼了吗?),这样原本的 前端 → AJAX → 远程服务器 这样的调用关系,会被代理成 前端 → AJAX → 本地服务器 → Http → 远程服务器 这样 —— 你跟本地服务器是同源的、没有跨域问题,而服务器跟服务器之间没有跨域一说,自然跨域问题就被解决了。

回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容