go - Golang如何在静态服务中删除最后一个斜杠

标签 go

我想删除路径中的最后一个斜杠,例如: localhost:8080 / Login / -> localhost:8080 / Login 。在代码中,我使用 / login 而不是 / login / ,但是 css js 不起作用,请帮忙!

这是我的代码:

转到文件:

func main() {
    fileServer := http.FileServer(http.Dir("pages"))
    //http.Handle("/Login/", http.StripPrefix("/Login/", fileServer))
    http.Handle("/Login", http.StripPrefix("/Login", fileServer))

    http.ListenAndServe(":8080", nil)
}

HTTP文件:
<link href="/css/bootstrap/bootstrap-4.3.1.css" rel="stylesheet" />
<script src="/js/bootstrap/bootstrap-4.3.1.js"></script>

最佳答案

您基本上是将前端安装在“/ Login”上。

但是您的js和css是从“/”请求的

因此,当然不会加载它们。

您必须:

  • 将css和js引用更改为“/ Login / js / ....”和“/ Login / css / ...”

    这似乎不像
  • 实际想要做的
  • 或者,将前端安装在“/”上
    http.Handle("/", fileServer)
    
  • 关于go - Golang如何在静态服务中删除最后一个斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58600189/

    相关文章:

    去安装第三方包,导入路径无法识别

    go - 从源代码构建 runc 时出错

    go - 为用户可以编辑的页面(例如维基百科/stackoverflow 页面)设计数据存储架构

    go - 如何自动启用测试在包内并行运行?

    Google Cloud Container Builder - 使用 vendor 的依赖项从 Go 源代码构建 Docker 容器

    go - 使用一个返回值?

    python - RabbitMQ 消息丢失

    Go 项目不从 github 中提取导入更新

    go - 在 golang 程序中运行交互式 shell 脚本

    go - 使用 Go 向 APNS 发出推送请求时出现 403 禁止错误。我是否正确创建了 JWT?