首页 > 后端开发 > Golang > Golang http.FileServer 返回 404 未找到

Golang http.FileServer 返回 404 未找到

WBOY
发布: 2024-02-11 08:50:07
转载
656 人浏览过

Golang http.FileServer 返回 404 未找到

php小编香蕉为您介绍Golang中的一个常见问题,即使用http.FileServer时返回404未找到错误。在使用Golang构建Web应用程序时,我们经常会使用http.FileServer来提供静态文件服务。然而,有时候在访问静态文件时会遇到404未找到的问题。本文将帮助您解决这个问题,并提供一些常见的解决方案。

问题内容

有这个简单的片段:

fs := http.FileServer(http.Dir("./web/js"))
    http.Handle("/js/", http.StripPrefix("/js/", fs))
登录后复制

并且转到 /js/ 实际上列出了文件,但是当我尝试打开实际文件时,它显示 404 Not Found

$ curl http://localhost:8100/js/
<pre class="brush:php;toolbar:false">
<a href="test.js">test.js</a>
$ curl http://localhost:8100/js/test.js 404 page not found
登录后复制

有什么建议吗?这似乎是一个超级微不足道的问题。

解决方法

问题不在代码片段中,而是模糊了细节,例如使用 gorilla/mux ,它以不同的方式提供文件,如本解决方案中所指出的:

解决方案

TLDR:

import  "github.com/gorilla/mux"

// snip

router := mux.NewRouter()
fs := http.FileServer(http.Dir("./web/js"))
router.Handle("/js/{.js}", http.StripPrefix("/js/", fs))
登录后复制

以上是Golang http.FileServer 返回 404 未找到的详细内容。更多信息请关注PHP中文网其他相关文章!

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