SpringBoot整合Vue访问index.html出现404
SpringBoot的yml(properties、yaml)文件配置了禁用资源映射有的项目可能为了要使用@ControllerAdvice与@ExceptionHandler来捕获controller层的异常,可能会在配置文件中配置了如下内容,从而禁用了资源映射:spring:mvc:throw-exception-if-no-handler-found: true # 告诉...
·
SpringBoot的yml(properties、yaml)文件配置了禁用资源映射
有的项目可能为了要使用@ControllerAdvice与@ExceptionHandler来捕获controller层的异常,可能会在配置文件中配置了如下内容,从而禁用了资源映射:
spring:
mvc:
throw-exception-if-no-handler-found: true # 告诉 SpringBoot 当出现 404 错误时, 直接抛出异常
resources:
add-mappings: false # 告诉 SpringBoot 不要为我们工程中的资源文件建立映射
改为:
spring:
mvc:
throw-exception-if-no-handler-found: true
static-path-pattern: /statics/**
或者添加一个配置类(前提是你的静态文件资源在resources/static目录下,如果不是,修改为对应的位置):
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
// 访问http://localhost:8080/static/*** 都会跳转到classpath:/static/下去找,即resources/static/
registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
}
}
然后可以在controller中添加一个映射,跳转到默认首页:
@Controller
public class AdminController {
/**
* 设置web主页面
* @return
*/
@GetMapping("/")
public String index(){
return "/static/index.html";
}
}
更多推荐
已为社区贡献1条内容
所有评论(0)