背景:我在 GAE 上运行 Go 并为我的路由器使用 Mux。为了获取 URL GAE 要求我使用其内置的 urlFetch 功能。我想在我的模块 init() 期间进行此 URL 获取,但据我所知,我只能在通过处理程序调用时使用 urlFetch。
func init() {
r := mux.NewRouter()
r.HandleFunc("/", homeHandler)
r.HandleFunc("/about", anotherHandler)
http.Handle("/", r)
}
GAE 建议使用以下代码来制作 urlFetch:
c := appengine.NewContext(r)
client := urlfetch.Client(c)
...但它的参数是一个 http 路由器,如果我通过我的 mux 路由器,它就不想工作。所以我不知道如何让这个 urlFetch 在 URL 处理程序的范围之外发生。
传递多路复用路由器时出错:“不能在“appengine”.NewContext 的参数中使用 r(类型 *mux.Router)作为类型 *http.Request”