欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Caused by: org.yaml.snakeyaml.scanner.ScannerException: mapping values are not allowed here

程序员文章站 2022-04-15 17:35:25
...

出现这个问题主要是yml文件的语法出现了问题。

yml基本语法如下:

  • 大小写敏感
  • 冒号后面要有空格
  • 只允许使用空格缩进,表示层级关系
  • 相同层级的元素需要左侧对齐
  • # 表示注释,从这个字符一直到行尾

我遇到这个错误是因为缩进问题:第6行的uri应该与id左对齐,uri下面几句话也要相应左移:

spring:
  cloud:
    gateway:
      routes:
        - id: product_route
            uri: lb://shoppingmall-product
            predicates:
              - Path=/api/product/**
            filters:
              - RewritePath=/api/(?<segment>.*),/$\{segment}
        - id: admin_route
          uri: lb://renren-fast
          predicates:
            - Path=/api/**
          filters:
            - RewritePath=/api/(?<segment>.*),/renren-fast/$\{segment}

修改之后:

spring:
  cloud:
    gateway:
      routes:
        - id: product_route
          uri: lb://shoppingmall-product
          predicates:
            - Path=/api/product/**
          filters:
            - RewritePath=/api/(?<segment>.*),/$\{segment}
        - id: admin_route
          uri: lb://renren-fast
          predicates:
            - Path=/api/**
          filters:
            - RewritePath=/api/(?<segment>.*),/renren-fast/$\{segment}

这样就不会报错了。