什么是跨域
跨域:指的是浏览器不能执行其他网站的脚本。它是由浏览器同源策略造成的,是浏览器对javascript施加的安全限制。
例如:a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源。注意:跨域限制访问,其实是浏览器的限制。
同源策略:是指协议,域名,端口都要相同,其中有一个不同都会产生跨域
如何解决跨域
反向代理
在后端利用Nginx进行反向代理设置,例如将81请求转发到82上
server{
# 监听9099端口
listen 81;
# 域名是localhost
server_name localhost;
#凡是localhost:9099/api这个样子的,都转发到真正的服务端地址http://localhost:9871
location ^~ /api {
proxy_pass http://localhost:82;
}
}