Go + Angular:加载基础 html

我正在尝试使用 Angular 在 Go 中编写一个应用程序。我不确定我的概念是否正确,但基本上我应该提供一个简单的 html,它加载 angular 和应用程序 (js) 本身,然后其余部分由 ajax 请求处理。我不知道的是如何在每个路径上的每个非 ajax 请求上提供 html 文件?我想使用 Gorilla mux,但我不知道如何做到这一点。

这甚至是正确的方向吗?


慕运维8079593
浏览 288回答 2
2回答

翻翻过去那场雪

对于不是任何已知 url 的每个请求,您应该发送 index.html - 或任何您的基本 angular 应用程序文件。Gorilla/mux 有一个 NotFoundHandler,它是所有其他路由都不匹配的处理程序。您可以像这样为它分配您自己的处理程序:大猩猩/多路复用器的解决方案是:func main() {    r := mux.NewRouter()    r.HandleFunc("/foo", fooHandler)    r.NotFoundHandler = http.HandlerFunc(notFound)    http.Handle("/", r)}而 notFound 是:func notFound(w http.ResponseWriter, r *http.Request) {    http.ServeFile(w, r, "static/index.html")}假设您的基本文件在 static/index.html :) 中。现在,所有不是任何其他请求的请求(因此,在该设置中 - 不是路由中定义的 ajax 调用)将提供带有 url 的索引文件,该 url 可以由 ngRoute 或 ui-router 处理。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go