跨域是什么
跨域,全称叫做跨域资源共享。是浏览器的一种保护机制,浏览器最基本的安全功能。如果缺少了同源策略,浏览器的正常功能都会受到影响。同源策略下只允许网页请求同一域名下的服务 ,即协议,域名和端口都要保持一致。
如何解决跨域
跨域问题前后端都能解决,所以当你是一名前端的时候,最方便的解决办法就是————让后端解决一下(划掉)。开个玩笑,各位后端大哥不要打我。其实前端要解决跨域问题也很简单。
前端如何解决跨域问题
配置代理,中转请求
跨域是浏览器的保护机制,所以我们解决跨域问题就可以在前端开发时配置代理,中转请求。我们使用一个中转服务器来发送请求和接收响应。大部分的前端脚手架都支持代理。在一个用vite脚手架创建的项目中,去他的vue.config.js中去配置。
这样配置完之后,我们对于
'/api'
的请求就会被发往'http://localhost:3000'
。就算是做了一个代理。
后端如何解决跨域问题
Node或者express,可以直接添加cors中间件。
cors默认通过所有跨域请求,如果要限制指定的地址,就要给origin传递一个或者多个地址。