20220914-springcloud-网关回顾

20220914

一·回顾

1.1discovery(建议加上)

image-20220914091044361

discovery: 可以不加,但是只兼容高版本,建议加上,后期nacos服务和配置不在同个位置也便于区分

nacos启动:

指令:[startup -m standalone]

image-20220914092045783

1.2nginx配置文件

nginx内容呼应,查看配置文件需注意的点

image-20220914091320547

image-20220914091521789

1.3网关

跨域处理:

注:allowedOrigins是需要修改的,其他内容都是固定的

也可以写成:"*" 暂未进行尝试.

spring:
  cloud:
    gateway:
      # 。。。
      globalcors: # 全局的跨域处理
        add-to-simple-url-handler-mapping: true # 解决options请求被拦截问题
        corsConfigurations:
          '[/**]':
            allowedOrigins: # 允许哪些网站的跨域请求 
              - "http://localhost:8090"
              - "http://127.0.0.1:8090"
            allowedMethods: # 允许的跨域ajax的请求方式
              - "GET"
              - "POST"
              - "DELETE"
              - "PUT"
              - "OPTIONS"
            allowedHeaders: "*" # 允许在请求中携带的头信息
            allowCredentials: true # 是否允许携带cookie
            maxAge: 360000 # 这次跨域检测的有效期
路由配置:

需要注意uri名称与nacos中注册的一致,格式大概如下

spring:
  cloud:
    gateway:
      routes: # 网关路由配置
        - id: weatherservice # 路由id,自定义,只要唯一即可
          # uri: http://127.0.0.1:8081 # 路由的目标地址 http就是固定地址
          uri: lb://weather-service # 路由的目标地址 lb就是负载均衡,后面跟服务名称
          predicates: # 路由断言,也就是判断请求是否符合路由规则的条件
            - Path=/weather/** # 这个是按照路径匹配,只要以/user/开头就符合要求
        - id: xiaohuaservice # 路由id,自定义,只要唯一即可
          # uri: http://127.0.0.1:8081 # 路由的目标地址 http就是固定地址
          uri: lb://xiaohua-service # 路由的目标地址 lb就是负载均衡,后面跟服务名称
          predicates: # 路由断言,也就是判断请求是否符合路由规则的条件
            - Path=/xiaohua/** # 这个是按照路径匹配,只要以/user/开头就符合要求
自身注册:

网关自身也需要注册到nacos中,才能进行使用

服务注册地址\配置地址\注册名

spring:
  application:
    name: api-gateway
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
      config:
        server-addr: localhost:8848
        file-extension: yaml
整体范例:
server:
  port: 8001
spring:
  application:
    name: api-gateway
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
      config:
        server-addr: localhost:8848
        file-extension: yaml
    gateway:
      routes: # 网关路由配置
        - id: weatherservice # 路由id,自定义,只要唯一即可
          # uri: http://127.0.0.1:8081 # 路由的目标地址 http就是固定地址
          uri: lb://weather-service # 路由的目标地址 lb就是负载均衡,后面跟服务名称
          predicates: # 路由断言,也就是判断请求是否符合路由规则的条件
            - Path=/weather/** # 这个是按照路径匹配,只要以/user/开头就符合要求
        - id: xiaohuaservice # 路由id,自定义,只要唯一即可
          # uri: http://127.0.0.1:8081 # 路由的目标地址 http就是固定地址
          uri: lb://xiaohua-service # 路由的目标地址 lb就是负载均衡,后面跟服务名称
          predicates: # 路由断言,也就是判断请求是否符合路由规则的条件
            - Path=/xiaohua/** # 这个是按照路径匹配,只要以/user/开头就符合要求
      globalcors: # 全局的跨域处理
        add-to-simple-url-handler-mapping: true # 解决options请求被拦截问题
        corsConfigurations:
          '[/**]':
            allowedOrigins: # 允许哪些网站的跨域请求
              - "http://localhost:8092"
              - "http://127.0.0.1:8092"
            allowedMethods: # 允许的跨域ajax的请求方式
              - "GET"
              - "POST"
              - "DELETE"
              - "PUT"
              - "OPTIONS"
            allowedHeaders: "*" # 允许在请求中携带的头信息
            allowCredentials: true # 是否允许携带cookie
            maxAge: 360000 # 这次跨域检测的有效期
  profiles:
    active: dev

二.nacos集群部署

image-20220914095348765

步骤:

(参考上方文档)

1.4个naocs,一个总领,三个分列

2.数据库创建

3.修改如下文件

image-20220914095425315

4.启动nacos

(启动3个)

5.启动nginx

posted @   wzztg  阅读(56)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示