78得票1回答
如何向我的处理程序传递参数

我试图将我的数据库对象传递给处理程序,而不是使用全局对象。但我不知道这是否可能,我正在使用Gorilla Mux包,我可以看到它将闭包作为第二个参数。// https://github.com/gorilla/mux/blob/master/mux.go#L174 // HandleFunc ...

11得票3回答
Golang HTTP Mux 更改处理程序函数

我对Go还比较陌生,并且没有找到任何关于这方面的信息,也许目前还不可能实现。 我正在尝试删除或替换mux路由(使用http.NewServeMux或gorilla的mux.Router)。我的最终目标是能够在不重新启动程序的情况下启用/禁用一条或一组路由。 我可以通过处理程序来处理每个处理...

10得票4回答
嵌套的Gorilla Mux路由器无法工作

使用下面的代码,当我访问/test2时,它会回复404 - 未找到。/test1可以正常工作。为什么会这样?嵌套不允许吗,尽管路由器实现了http.Handler接口?package main import ( "fmt" "net/http" "github.com...

9得票2回答
gorilla/context和gorilla/sessions有什么不同?

我获取会话,以前从PHP过来的我习惯于这样做。 <?php session_start(); $_SESSION["key"] = "val"; echo $_SESSION["key"]; ?> 在服务器端设置一个或多个键及其值,并能够在会话过期之前检索或覆盖它。 Gor...

21得票2回答
在Go语言中使用Rest APIs - 使用net/http还是像Gorilla这样的库?

我看到Go语言本身已经有一个net/http包,足以提供一切你需要的来搭建自己的REST API。然而,还有许多框架可供选择,最受欢迎的可能是gorilla。 考虑到我未来需要做的主要事情之一就是构建REST API来访问一些后端存储(数据库、缓存等)以执行CRUD操作,我应该使用Go的标准库...

13得票1回答
在Golang中测试HTTP路由

我正在使用Gorilla mux和net/http包创建以下路由: package routes //some imports //some stuff func AddQuestionRoutes(r *mux.Router) { s := r.PathPrefix("/qu...

7得票4回答
在 gorilla mux 路由器上设置 404 NotFound 处理程序。

这是我用Go语言和gorilla mux包编写的一个小型演示Web服务器的代码: package main import ( "fmt" "github.com/gorilla/mux" "net/http" ) func handler(w http.Respo...

14得票2回答
全局恢复处理程序用于golang http panic

我想创建一个全局错误处理程序,将其通过电子邮件发送。 package main import ( "github.com/gorilla/mux" "log" "net/http" ) func main() { rtr := mux.NewRouter(...

7得票1回答
如何将GO Gorilla Mux路由拆分成同一包中的两个不同文件

我有一个独立的文件routes.go(包路由),其中存储了所有路由和处理程序。 但是我想将此文件拆分为2个文件。我想将我的routes.go重命名为main.go,并创建新的附加文件moduleX.go(包路由)。 我该如何做? 我想在同一“包路由”中的多个文件中存储所有路由。 pack...

8得票1回答
Gorilla/mux Golang:缓存静态文件

我有一个Go Web应用程序,它提供静态的HTML / JS / CSS文件和一些API端点。我发现我的HTML / JS / CSS没有被浏览器缓存。例如,每次重新加载页面时,它们都会被完全重新下载。 这是需要在服务器端进行配置更改吗?如何使用Go和Gorilla Mux完成此操作? 我...