css – Springboot – 资源解释为样式表,但使用MIME类型text/htm进行传输

我之前看到了这个问题的一些答案,但我尝试过的解决方案都没有.

我的login.css没有应用于我的Spring Boot应用程序中的login.html.我也在使用Thymeleaf.

安全性已打开 – 但我不认为这是浏览器中的问题.我没有看到加载login.css失败 – 只有消息:

Resource interpreted as Stylesheet but transferred with MIME type text/html:

浏览器中的进一步检查显示它正在请求text / css,但是获取text / html响应.

html:

<!doctype html>
<html xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity4">

<head>

<Meta charset="utf-8"/>
<Meta http-equiv="X-UA-Compatiable" content="IE-Edge"/>
<Meta name="viewport" content="width=device-width,initial-scale=1"/>
<Meta name="Login"/>


<title>LOGIN</title>

<!-- Latest compiled and minified CSS -->

....
<link rel="stylesheet" href="login.css" content-type="text/css"/>

login.html的路径

\src\main\resources\templates\login.html

login.css的路径

\src\main\resources\static\login.css

以防万一这是一个权限问题,我把:

.antMatchers("/css/**").permitAll()

我注意到通过CDN提供的所有CSS都没有问题.浏览器也返回带有302状态代码的login.css.

谢谢

解决方法

在使用Spring Boot Spring MVC编写一些代码时,我遇到了完全相同的问题.使用CDN设置的CSS文件工作正常,而我的static / css文件夹中设置的CSS文件返回了HTML内容.

例:

<!-- This first worked fine,loading all styles -->
<link th:href="@{/webjars/bootstrap/3.3.7/css/bootstrap.min.css}"
      href="http://cdn.jsdelivr.net/webjars/bootstrap/3.3.7/css/bootstrap.min.css"
      rel="stylesheet" media="screen" />

<!-- This second one returned the content of an HTML - Content Type text/html -->
<link rel="stylesheet" th:href="@{/css/login/style.css}" href="/css/login/style.css" />

过了一段时间,我可以看到使用Chrome Dev Tools,为我的本地style.css返回的内容与我的一个HTML页面相同.

检查指向带有该内容的HTML文件的路由,我可以意识到我正在使用错误属性进行@RequestMapping配置.我有@RequestMapping(name =“…”),而不是@RequestMapping(path =“…”).

控制器有问题

@RequestMapping(name = "/product/add",method = RequestMethod.GET)
public String add(Model model) {
    model.addAttribute("product",new Product());
    return "product/edit";
}

控制器改变了

@RequestMapping(path = "/product/add",new Product());

    return "product/edit";
}

更改路径的属性名称后,所有内容都已正确加载.

奇怪的是,像这样的小错误影响了整个程序.

希望它对某个面临同样问题的人有用.

相关文章

解析思路 我们建立好一个SpringBoot的工程后,我们将从启动类,SpringBootApplication开始进行探究。 开...
问题现象 org.springframework.context.ApplicationContextException: Unable to start embedded conta...
异常信息 分析原因 1.该异常是如何产生的 我是通过postman,发送一个post请求,导致该异常的。 从上面的...
有时候会出现这种情况,看一下项目的pom中是否有这个插件配置,没有的话需要引入。
使用方式 在类上打上@slf4j注解 打上注解后可以操作log对象 增加配置文件 在resources下增加配置文件。...
一、概述 Spring框架是以 简化Java EE应用程序的开发 为目标而创建的。Spring可以实现很多功能,但是这...