gpt4 book ai didi

go - 提供 CSS 服务时,Golang 中出现 MIME 类型 ('text/plain' ) 错误

转载 作者:行者123 更新时间:2023-12-03 03:26:23 26 4
gpt4 key购买 nike

我正在构建我的第一个 Go Web 项目,当我加载页面时,我在浏览器控制台上收到此错误

Refused to apply style from 'http://localhost:8080/static/css/processor-auth.css' because its MIME type ('text/plain') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

我不确定我做错了什么,因为我已经添加了此代码来加载静态文件

http.Handle("/static/",http.StripPrefix("/static/",http.FileServer(http.Dir("static"))))

这就是我的 main.go 文件的样子:

 package main

import(
"net/http"
"os"
"html/template"

"github.com/julienschmidt/httprouter"
)


// Auth struct handler
type auth struct{}

func (auth *auth) ServeHTTP(w http.ResponseWriter, r *http.Request){
wd,_:= os.Getwd()
t := template.Must(template.ParseFiles(wd+"/templates/processor/auth.html"))
err:=t.Execute(w,nil)

if err !=nil{
http.Error(w,"Could not execute template",500)
}

}


func main(){

router:= httprouter.New()
// set the static files
http.Handle("/static/",http.StripPrefix("/static/",http.FileServer(http.Dir("static"))))

router.Handler("GET","/auth",&auth{})

server := http.Server{
Addr:"127.0.0.1:8080",
Handler:router,
}

server.ListenAndServe()
}

Folder Structure

编辑:解决了问题

由于我使用 httprouter 作为我的多路复用器,所以我无法使用

http.Handle("/static/",http.StripPrefix("/static/",http.FileServer(http.Dir("static"))))

我必须更新到 httprouter 的 ServeFiles 函数并将代码更新为router.ServeFiles("/static/*filepath",http.Dir("static"))

最佳答案

我使用的是 Windows 计算机(Windows 10 和 Windows Server 2019),并且我在 javascript 文件上遇到了同样的问题,我进入注册表 \HKEY_CLASSES_ROOT\.js >“Content Type”,将其从“text/plain”更改为“application/javascript”,然后重新启动电脑并修复了该问题

关于go - 提供 CSS 服务时,Golang 中出现 MIME 类型 ('text/plain' ) 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54835510/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com