@CrossOrigin的使用

devtools/2024/9/23 20:21:56/

@CrossOrigin的使用

  • 1.使用场景
  • 2.用法
  • 3.示例
    • 3.1 标注在方法上
    • 3.2 标注在类上
  • 3.属性配置

1.使用场景

  • 前后端分离应用:当前端应用和后端服务部署在不同的域或端口上时,前端应用尝试向后端服务发起请求时,可能会遇到同源策略的限制。这时,后端服务可以使用@CrossOrigin注解来允许这些跨域请求。
  • 微服务架构:在微服务架构中,不同的服务可能部署在不同的域或端口上。服务之间或前端应用与后端服务之间的通信可能需要跨域。
  • API开放平台:如果你正在开发一个API开放平台,并希望允许第三方开发者从他们的应用中调用你的API,那么你需要确保你的API支持跨域请求。

2.用法

@CrossOrigin 可以标注在方法或类上。当标注在类上时,表示该类中的所有响应都支持跨域请求。当标注在方法上时,仅表示该方法的响应支持跨域请求。

3.示例

3.1 标注在方法上

java">@RestController  
public class MyController {  @CrossOrigin(origins = "http://example.com")  @GetMapping("/myEndpoint")  public String myEndpoint() {  return "Hello, World!";  }  
}

只有http://example.com域的请求才能访问/myEndpoint端点

3.2 标注在类上

java">@RestController  
@CrossOrigin(origins = {"http://example.com", "http://anotherexample.com"})  
public class MyController {  @GetMapping("/myEndpoint")  public String myEndpoint() {  return "Hello, World!";  }  // 该类中的其他方法也将支持来自http://example.com和http://anotherexample.com的跨域请求  
}

MyController中的所有方法都允许来自http://example.comhttp://anotherexample.com的跨域请求。

3.属性配置

@CrossOrigin 注解有多个属性,例如:

origins:允许访问的源列表。
methods:允许访问的HTTP方法(如GET, POST等)。
allowedHeaders:允许携带的请求头。
maxAge:预检请求的缓存时间。
allowCredentials:是否允许发送凭证(如cookies, HTTP认证或客户端SSL证明)。


http://www.ppmy.cn/devtools/8829.html

相关文章

射频识别技术助力产品分拣:提升效率与准确性

射频识别技术助力产品分拣:提升效率与准确性 RFID技术在产品分拣中具有重要的应用,它利用射频信号进行非接触式的自动识别,能够高效、准确地完成产品分拣工作。 在产品分拣中,RFID技术的主要应用方式是在产品上粘贴RFID电子标签&…

MyBatisCodeHelperPro插件免激活安装

1、下载 MyBatisCodeHelperPro 插件包(内部已经激活) 链接: https://pan.baidu.com/s/1i2Nvlnaea92U1Jx5E8xJUA 提取码: jmms 2、安装,点开插件,选择本地安装,选择下载的MyBatisCodeHelper-Pro.zip即可完成安装。

图像处理的魔法师:Pillow 库探秘

文章目录 图像处理的魔法师:Pillow 库探秘第一部分:背景介绍第二部分:库是什么?第三部分:如何安装这个库?第四部分:库函数使用方法第五部分:场景应用第六部分:常见Bug及解…

笔试题4 -- 除2!(k次机会偶数除2求最小和)

除2!(k次机会偶数除2求最小和) 文章目录 除2!(k次机会偶数除2求最小和)读懂题目方案一(基于multiset实现 -- 超时)方案二(改进算法--基于 priority_queue 实现)总结 题目链接: 除2!…

n4.树(上)

一、树与树的表示 1.查找 静态查找,查找的对象集合本身不发生改变,例如查字典;动态查找,查找的对象集合本身是动态变化的。 顺序查找 将数据储存在数组里,按照顺序进行查找。此外需要一个结构指针Tbl,它的…

mysql基础5——设置主键

业务字段尽量不要用做主键 删除主键,只是主键被删除,字段还存在 alter table demo.membermaster drop primary key; 添加一个字段设置为主键并给主键添加自增约束 alter table demo.membermaster add column id int primary key auto_increment; 自增…

个人电脑信息安全注意事项

个人电脑信息安全注意事项 一、密码安全: 设置复杂且独特的密码,避免使用容易猜测或常见的密码。 定期更换密码,特别是在重要账户或应用上。 不要在多个账户上重复使用相同的密码。 使用密码管理工具来安全地存储和访问密码。 二、软件安…

npm config set registry切换npm镜像源

要切换 npm 镜像源,可以使用 npm config set registry 命令。以下是切换到官方的 npm 镜像源的步骤: 查看当前 npm 镜像源: npm config get registry如果当前的镜像源不是官方的 npm 镜像源(https://registry.npmjs.org/&#xff…