仅使用stdlib在Golang进行路由

仅使用stdlib在Golang进行路由,go,routing,routes,mux,Go,Routing,Routes,Mux,最近我开始了一个学校项目,我需要做一个网络论坛,只使用标准的围棋库。我遇到的主要障碍是我不知道如何正确地制定路线。例如: router.HandleFunc("/threads", threadsHandler) router.HandleFunc("/threads/", postsHandler) 如果我只有两条路线就可以了。但我希望能够处理更复杂的路线,如: "/threads/{thread_name}/posts" 在不使用Gorilla/Mux的情况下如何做到这一点?您只需使用H

最近我开始了一个学校项目,我需要做一个网络论坛,只使用标准的围棋库。我遇到的主要障碍是我不知道如何正确地制定路线。例如:

router.HandleFunc("/threads", threadsHandler)
router.HandleFunc("/threads/", postsHandler)
如果我只有两条路线就可以了。但我希望能够处理更复杂的路线,如:

"/threads/{thread_name}/posts"

在不使用Gorilla/Mux的情况下如何做到这一点?

您只需使用HTTP包即可处理此情况。因此,这个包提供了HTTP客户端和服务器实现。所以我认为这会对你有所帮助

func main() {
   http.HandleFunc("/threads/{thread_name}/posts",threadsHandler)   
   log.Fatal(http.ListenAndServe(":8080", nil))
 } 

您可以转到此链接以了解更多详细信息

在应用程序代码中编写分派逻辑。在
/threads/
的处理程序中,检查请求URL路径并基于该路径进行分派。您可以在此处检查路由是如何完成的。您可以根据自己的需求构建类似的东西。使用一些“编程”并没有错。并非所有的事情都必须通过调用某个包来完成。