首页 > 后端开发 > Golang > 为什么我的 Go FileServer 返回错误的 Content-Type MIME 类型?

为什么我的 Go FileServer 返回错误的 Content-Type MIME 类型?

Patricia Arquette
发布: 2024-11-27 12:53:10
原创
903 人浏览过

Why Does My Go FileServer Return the Wrong Content-Type MIME Type?

“Content-Type”Mime 类型不正确的 FileServer 响应

简介
FileServer 是一个功能强大的 Go 包,用于提供静态文件。但是,您可能会遇到响应返回不正确的“Content-Type”mime 类型的问题,例如“text/html”而不是“audio/mpeg”。如果您提供需要特定 mime 类型的特定文件类型,这可能会出现问题。

答案
要解决此问题,无需覆盖 mime 类型。相反,问题在于文件服务器的配置方式。具体来说,用于处理请求的模式可能不正确。

解决方案
解决方案是在用于处理请求的模式中添加尾部斜杠。例如,不应使用:

1

http.Handle("/media", http.StripPrefix("/media", fs))

登录后复制

,您应该使用:

1

http.Handle("/media/", http.StripPrefix("/media/", fs))

登录后复制

说明
尾部斜杠表示该模式表示有根子树,而不是而非固定路径。这意味着文件服务器将为“/media/”子树中的任何路径提供请求。

验证
为了确保修复有效,您可以尝试访问 mp3再次归档。您现在应该收到包含正确“Content-Type”mime 类型“audio/mpeg”的响应。

以上是为什么我的 Go FileServer 返回错误的 Content-Type MIME 类型?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板