网站首页 > 技术文章 正文
由于浏览器的同源策略限制,所以会出现跨域的问题。同源策略是一种约定,它是浏览器最核心也最基本的安全功能。同源策略会阻止一个域的javascript脚本和另外一个域的内容进行交互。所谓同源(即指在同一个域)就是两个页面具有相同的协议(比如http和https就是不同协议),主机(域名或者IP地址)和端口号
之前有用jsoap处理跨域的问题,下面推荐两种比较主流的方式
前端代码打包到后端服务的项目中
前端以Vue.js为例,后端以SpringBoot为例
首先前端项目打包
- cd 项目根目录
- npm install 安装Vue.js的依赖
- npm run build 编译打包前端项目
编译完成后,项目根目录会多出一个dist的文件夹,文件夹内就是完整的前端项目
后端打包
然后在后端项目src目录下建立webapp的文件夹,将前端项目的dist文件夹内的所有内容拷贝到webapp内(温馨提示放入resources目录也可以,我们为了好区分就新增一个目录)
pom.xml加入下面resources这样的配置,这样打成jar包时就可以引入webapp内的内容
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<!--打成jar包时引入webapp-->
<resources>
<resource>
<!-- 指定resources插件处理哪个目录下的资源文件 -->
<directory>src/main/webapp</directory>
<!--注意此次必须要放在此目录下才能被访问到 -->
<targetPath>META-INF/resources</targetPath>
<includes>
<include>**/**</include>
</includes>
</resource>
</resources>
</build>
Nginx转发
有些项目前后端需要彻底分离部署,这时候可以依赖Nginx神器做代理转发我们的前端请求
把前端项目dist(可以随意改名哈)放到Nginx或者tomcat,然后在Nginx的配置文件nginx.conf增加一个配置作为转发即可
location /houtai/ {
proxy_pass 后台接口地址;
tcp_nodelay on;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /houtai/,这个配置后台作为前端请求后台接口的根路径即可,Nginx只要匹配到这个根路径就会转发到proxy_pass;
- 上一篇: Spring Boot应用如何解决跨域问题?
- 下一篇: SpringBoot项目跨域解决方案有哪些?
猜你喜欢
- 2024-09-27 ASP.NET实战007:MVC解决跨域请求问题详解
- 2024-09-27 一文带你彻底搞懂跨域那些事(不只会用)
- 2024-09-27 程序员如何处理跨域问题,记住这一点就够了
- 2024-09-27 springboot 跨域问题解决方法 springboot如何解决跨域
- 2024-09-27 java前后端分离ajax访问跨域问题解决办法
- 2024-09-27 SpringBoot跨域问题解决方案 springboot 跨域问题
- 2024-09-27 HTTP请求跨域问题及解决方案 什么是跨域请求
- 2024-09-27 springboot解决js前端跨域问题,javascript跨域问题解决
- 2024-09-27 多学一招总没错吧?SpringBoot解决前后端分离的跨域问题
- 2024-09-27 Springboot项目中几种跨域的解决方法
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端md5加密 (49)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- 前端接口 (46)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- mac oracle (47)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)