Spring Boot 中如何解决跨域问题、Spring Cloud 5大组件、微服务的优缺点是什么?

Spring Boot 中如何解决跨域问题 ?

SpringMVC项目中使用@CrossOrigin注解来解决跨域问题 , 本质是CORS

 @RequestMapping("/hello")
 @CrossOrigin(origins = "*")
 //@CrossOrigin(value = "http://localhost:8081") //指定具体ip允许跨域
 public String hello() {
     return "hello world";
 }

SpringBoot项目采用自动配置的方式来配置CORS , 可以通过实现 WebMvcConfigurer接口然后重写addCorsMappings方法解决跨域问题。

 @Configuration
 public class CorsConfig implements WebMvcConfigurer {
 ​
     @Override
     public void addCorsMappings(CorsRegistry registry) {
         registry.addMapping("/**")
                 //是否发送Cookie
                 .allowCredentials(true)
                 //放行哪些原始域
                 .allowedOrigins("*")
                 .allowedMethods(new String[]{"GET", "POST", "PUT", "DELETE"})
                 .allowedHeaders("*")
                 .exposedHeaders("*");
     }
 }

在SpringCloud项目中一般都会有网关 , 在网关中可以配置CORS跨域, 这样所有通过网关的请求都解决了跨域问题

 spring:
   cloud:
     gateway:
       globalcors:
         cors-configurations:
           '[/**]': # 匹配所有请求
             allowedOrigins: "*" #跨域处理 允许所有的域
             allowedMethods: # 支持的方法
               - GET
               - POST
               - PUT
               - DELETE

09- 你们项目中使用的SpringBoot是哪个版本 ?

  • SpringBoot : 2.3.4.RELEASE

  • SpringCloud : Hoxton.SR10

  • SpringCloudAlibaba : 2.2.5.RELEASE

10- Spring Cloud 5大组件有哪些?

早期我们一般认为的Spring Cloud五大组件是

  • Eureka : 注册中心

  • Ribbon : 负载均衡

  • Feign : 远程调用

  • Hystrix : 服务熔断

  • Zuul/Gateway : 网关

随着SpringCloudAlibba在国内兴起 , 我们项目中使用了一些阿里巴巴的组件

  • 注册中心/配置中心 Nacos

  • 负载均衡 Ribbon

  • 服务调用 Feign

  • 服务保护 sentinel

  • 服务网关 Gateway

11- 什么是微服务?微服务的优缺点是什么?

微服务就是一个独立的职责单一的服务应用程序,一个模块

1.优点:松耦合,聚焦单一业务功能,无关开发语言,团队规模降低 , 扩展性好, 天然支持分库 2.缺点:随着服务数量增加,管理复杂,部署复杂,服务器需要增多,服务通信和调用压力增大

最近更新

  1. TCP协议是安全的吗?

    2024-06-14 01:24:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-14 01:24:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-14 01:24:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-14 01:24:03       18 阅读

热门阅读

  1. WHAT - React 学习系列(二)

    2024-06-14 01:24:03       11 阅读
  2. Oracle数据库面试题-10

    2024-06-14 01:24:03       7 阅读
  3. Perl语言基础概念、基本语法

    2024-06-14 01:24:03       9 阅读
  4. 13、架构-流量治理之流量控制

    2024-06-14 01:24:03       6 阅读
  5. Linux系统 DM8安装 达梦数据库

    2024-06-14 01:24:03       8 阅读
  6. Vue 2

    2024-06-14 01:24:03       5 阅读
  7. 大数据开发语言Scala入门

    2024-06-14 01:24:03       8 阅读
  8. Unity创建简单的Http服务器/客户端测试

    2024-06-14 01:24:03       8 阅读
  9. 6.13--CSS

    6.13--CSS

    2024-06-14 01:24:03      8 阅读
  10. 【系统学C++】从C语言到C++(三)

    2024-06-14 01:24:03       9 阅读