uniapp前端H5页面解决跨域问题
什么是跨域?
跨域,是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript实施的安全限制。
这里说明一下,无法跨域是浏览器对于用户安全的考虑,如果自己写个没有同源策略的浏览器,完全不用考虑跨域问题了。是浏览器的锅,对。
同源策略限制了一下行为:
Cookie、LocalStorage 和 IndexDB 无法读取
DOM 和 JS 对象无法获取
Ajax请求发送不出去
说的更直白一点,就是我们在前端使用ajax发送异步请求,如果这个请求的URL地址与当前地址栏中的URL地址协议不同、域名不同、端口不同时,都成为跨域,
1.下载一个小皮面板
2.安装完成后打开Nginx服务
3.创建一个新的网站
4.自定义域名后确定
5.设置伪静态
下面展示一些 伪静态代码
。
location / {
proxy_pass http://localhost:8080/; //本地地址
}
location ^~ /api {
rewrite ^/api/(.*)$ /$1 break;
proxy_pass http://woyaoduixiang.cn/; // 需要跨域的后端接口地址
}
5.设置请求地址
此时请求后端数据时访问自己自定义的域名即可(切记加上/api,因为我们伪静态设置了前缀)
6.本地打开访问项目
会出现报错,直接无视就可以了,是因为热部署的关系,不影响开发