SpringBoot前后端分离项目跨域问题怎么解决
时间: 2024-05-10 18:19:20 浏览: 161
在 Spring Boot 中解决跨域问题可以通过如下步骤实现:
1. 在后端的代码中添加跨域配置,可以使用 `@CrossOrigin` 注解或者自定义过滤器实现。
2. 在前端的代码中发送 Ajax 请求时,需要设置 `xhrFields` 的 `withCredentials` 属性为 true,并且设置 `crossDomain` 属性为 true。
3. 在前端的代码中,需要设置请求头中的 `Access-Control-Allow-Origin` 和 `Access-Control-Allow-Credentials` 属性。
以下是一个示例代码:
后端代码:
```java
@RestController
public class TestController {
@CrossOrigin(origins = "*", allowCredentials = "true")
@GetMapping("/test")
public String test() {
return "test";
}
}
```
前端代码:
```javascript
$.ajax({
url: "http://localhost:8080/test",
type: "get",
xhrFields: {
withCredentials: true
},
crossDomain: true,
headers: {
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Credentials": "true"
},
success: function (data) {
console.log(data);
}
});
```
以上是解决跨域问题的一种方式,具体实现还需按照具体情况进行调整。
阅读全文