gateway作为网关跳转html页面时,网页能够正常跳转,但是所有的css,js文件均为404。这是因为没有对静态文件进行路由导致。

解决方法

gateway的yml配置

	routes:
        - id: info_route
          uri: lb://city-info
          predicates:
            - Path=/city-info/**, /info/static/**
          filters:
            - RewritePath=/city-info/, /info/static/**

        - id: manager_route
          uri: lb://city-manager
          predicates:
            - Path=/city-manager/**, /manager/static/**
          filters:
            - RewritePath=/city-manager/, /manager/static/**

文件目录如下
在这里插入图片描述
在这里插入图片描述
在项目的yml配置中添加

spring:
  resources:
    static-locations: classpath:/info/static/

static-locations后面添加自己的静态资源路径

如果有字体,图标报Failed to decode downloaded font
就在maven中添加如下代码

<build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>false</filtering>
            </resource>
        </resources>
</build>

因为经过maven的filter,会破坏font文件的二进制文件格式,到时前台解析出错,导致网页报错。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐