たとえば、私はやりたいです/api/v1/users/id/{id}
。
現在、私はこれを持っています:
mux := http.NewServeMux()
mux.Handle("/api/v1/users", HandleUsersV1{db: db, mux: mux})
log.Fatal(http.ListenAndServe(fmt.Sprintf("%s%d", ":", portNumber), mux))
が欲しいです:
mux := http.NewServeMux()
mux.Handle("/api/v1", HandleV1{})
そして次にHandleV1
:
mux.HandleFunc("/users/{id}", handler)
Gorilla Muxが私のためにできることを知っていますがPathPrefix
、私は好みnet/http
ます。
この規格net/http
は動的パスセグメントをサポートしていないため、/{id}
想像どおりに機能しません。接頭辞については、このhttps://golang.org/pkg/net/http/#StripPrefixを使用できます。
v1mux := http.NewServeMux()
v1mux.HandleFunc("/users/", handler)
mux := http.NewServeMux()
mux.Handle("/api/v1/", http.StripPrefix("/api/v1", v1mux))
log.Fatal(http.ListenAndServe(fmt.Sprintf("%s%d", ":", portNumber), mux))
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加