@CrossOrigin是Spring框架中的一个注解,用于处理跨域资源共享(Cross-Origin Resource Sharing, CORS)问题。

@CrossOrigin是Spring框架中的一个注解,用于处理跨域资源共享(Cross-Origin Resource Sharing, CORS)问题。在Web应用开发中,出于安全原因,浏览器实施了同源策略(Same-origin policy),这一策略限制了从一个源加载的Web页面脚本与来自不同源的资源交互。这意味着,如果尝试从一个域名(例如,example.com)的网页通过JavaScript向另一个域名(如api.example.com)发送AJAX请求,浏览器会阻止这个请求,除非服务器端明确允许此类跨域请求。

@CrossOrigin注解的作用就是告诉服务器端应该允许来自不同源的请求。当你在一个控制器类或具体处理方法上使用此注解时,Spring会自动在HTTP响应头中添加适当的CORS相关头部信息,如Access-Control-Allow-OriginAccess-Control-Allow-MethodsAccess-Control-Allow-Headers等,从而允许浏览器执行跨域请求。

例如,以下是一个使用@CrossOrigin的简单示例:

 
1import org.springframework.web.bind.annotation.CrossOrigin;
2import org.springframework.web.bind.annotation.GetMapping;
3import org.springframework.web.bind.annotation.RestController;
4
5@CrossOrigin(origins = "http://example.com", maxAge = 3600)
6@RestController
7public class MyController {
8
9    @GetMapping("/api/data")
10    public String getData() {
11        // 处理请求并返回数据
12        return "Some data";
13    }
14}

在这个例子中,@CrossOrigin(origins = "http://example.com", maxAge = 3600)注解应用到整个MyController控制器类上,意味着所有该控制器中的API都将允许来自http://example.com的跨域请求,并且这个允许规则的有效期为1小时(maxAge = 3600秒)。你也可以在具体的方法上使用@CrossOrigin来精细化控制跨域策略。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值