duandi8544 2016-02-12 15:56
浏览 91

Golang +角

I started trying to work with Go and Angular, but I have a weird issue.. I guess I'm just missing a tiny detail, but I can't figure it out.

I'm using https://github.com/julienschmidt/httprouter as a router for Go ... now with Angular, I should be able to copy & paste a URL into the browser and Angular should handle the according routes, right?

I have a "/login" route. Which works if the route gets accessed via the front-end .... but doesn't if I type in "mypage.com/login" into the browser, getting a 404.

Go routing basically is only doing

router.NotFound = http.FileServer(http.Dir("./public"))

Which works for the "/" route, but not for anything else. Which seems to be correct. But how do I setup the routing correctly, so Angular handles all the routing?

  • 写回答

5条回答 默认 最新

  • dongmengan8620 2016-02-12 16:48
    关注

    You can use the http package directly.

    Index page

    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        http.ServeFile(w, r, "./public/index.html")
    })
    

    This will serve the index.html file on all requests that don't match a route.

    File server

    http.Handle("/public/", http.StripPrefix("/public/", http.FileServer(http.Dir("./public"))))
    

    This will serve all files from the public directory.

    Don't forget to start your server

    http.ListenAndServe(":8000", nil)
    
    评论

报告相同问题?

悬赏问题

  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 划分vlan后不通了
  • ¥15 GDI处理通道视频时总是带有白色锯齿
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)
  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大