温州市建设小学网站,d8 wordpress,做网站图片,哪些网站是用响应式布局做的1、网关介绍 上篇对微服务中的nacos注册中心进行集成讲解。nacos主要作用是管理多服务之间复杂关系的组件。微服务是非常庞大且问题突出的架构#xff0c;HTTP协议具有跨源资源共享 (CORS) Cross- Origin Resource Sharing机制#xff0c;而处于安全考虑往往前端架构都会对跨…1、网关介绍 上篇对微服务中的nacos注册中心进行集成讲解。nacos主要作用是管理多服务之间复杂关系的组件。微服务是非常庞大且问题突出的架构HTTP协议具有跨源资源共享 (CORS) Cross- Origin Resource Sharing机制而处于安全考虑往往前端架构都会对跨域进行拦截此时前端继续调用微服务中的其它任何一个服务都会被拦截无法访问。虽然可以通过配置的方式处理但就会出现和微服务一样的问题配置繁琐且不好管理。 此时需要gateway的介入将所有HTTP请求通过网关在网络层实现重打包转发的方式下发到对应的微服务接口上去。gateway统一管理所有微服务的访问入口对于前端来讲只需要暴露网关服务的地址即可同时网关还兼顾系统安全、认证、过滤、限流等控制策略。
2、项目集成网关
本文使用Spring版本: SpringBoot2.7.5 Spring Cloud2021.0.5 Spring Cloud Alibaba2021.1
在上一篇创建的项目中继续创建子级工程gateway添加网关依赖
dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-gateway/artifactId
/dependency 本文使用的配置文件为bootstrap方式并未用到Spring默认的application配置两者区别感兴趣可以问度娘。本项目使用认证中心接口演示网关的接口统一管理下发。 在gateway项目中主配置文件bootstrap.yml中配置网关服务
spring:application:name: oto-gatewayprofiles:active: dev
在gateway项目中开发环境配置文件bootstrap-dev.yml中配置网关注册信息
server:port: 9999spring:cloud:nacos:# 注册中心discovery:server-addr: http://localhost:8848# 共享的配置文件config:server-addr: http://localhost:8848file-extension: yamlshared-configs[0]:data-id: oto-common.yamlrefresh: true
在nacos中还有一些网关有关的配置 spring:cloud:gateway:discovery:locator:enabled: true # 启用服务发现lower-case-service-id: trueroutes:- id: 认证中心uri: lb://oto-authpredicates:- Path/oto-auth/**filters:- StripPrefix1在nacos中配置项目配置信息可以无需可以及时生效所以基本不变的配置信息可以放在项目中配置可能发生变动的通通放到nacos中去动态配置。 由于我们本篇主要讲解演示gateway所以其它配置信息都被我干掉了因为太多了怕影响大家阅读。配置文件中的内容啥意思这里就不再一个一个讲了非常简单随便百度都有解释。
在网关启动类中添加nacos服务发现与注册注解
SpringBootApplication
EnableDiscoveryClient
public class OtoGatewayApplication {public static void main(String[] args) {SpringApplication.run(OtoGatewayApplication.class, args);}
}
至此网关部分代码完成超级简单。 我们启动的网关端口为9999认证中心端口为8000。
现在我们可以打开postman来测试端口是否可以调用。 从测试结果来看我们直接访问认证中心localhost:8000/ras/publicKey获取公钥的接口可以成功拿到公钥。接下来我们通过网关来获取公钥。 可以看到我们通过在nacos配置的网关转发地址为/oto-auth/**通过访问localhost:9999/oto-auth/rsa/publicKey同样成功的获取到了公钥。证明网关配置成功。 本篇只演示讲解关于网关的集成和配置使用等后续讲到认证中心的时候在认证中心讲网关的认证、鉴权功能。