gpt4 book ai didi

go - 如何将额外的参数传递给 Echo mux 处理程序?

转载 作者:行者123 更新时间:2023-12-01 22:21:13 29 4
gpt4 key购买 nike

如何将一些额外的变量传递给 Echo mux 处理程序?

我在 main.go 中注册了这样的路由:

 e.GET("/search/:query", handlers.Search(*kindex, app.infoLog))

正如您所见,这不是处理程序的正确签名。它应该在没有任何争论的情况下通过。即handlers.Search

如何从我的搜索处理程序访问 kindex 和 infoLog?

func Search(c echo.Context, kindex string, infoLog *log.Logger) error {
# Should I access a global variable from here?
infoLog.Printf("Kendra Index: %v\n", kindex)
# cut..
}

最佳答案

您可以创建给定类型的匿名函数(闭包)并将其传递给 Echo:

    handler := func(c echo.Context) error {
return Search(c, *kindex, infoLog)
}
e.GET("/search/:query", handler)

关于go - 如何将额外的参数传递给 Echo mux 处理程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63463826/

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