Gorilla Mux を使用して、REST API の HTTP ルートを処理しています。API に次のバインディングを使用しています。
r := mux.NewRouter()
r.Host(baseUrl)
api := r.PathPrefix("/api").Subrouter()
api.HandleFunc("/users", APIUsers).Methods("GET", "POST")
http.Handle("/", r)
http.ListenAndServe(":8083", nil)
次に、次のように CURL を実行します。
$ curl -i -X PUT http://127.0.0.1:8083/api/users
予想どおり、メソッドAPIUsers
は呼び出されません。私は200 OK
戻ってきます:
HTTP/1.1 200 OK
Date: Tue, 30 Dec 2014 19:03:59 GMT
Content-Length: 0
Content-Type: text/plain; charset=utf-8
たとえば、失敗したすべての関数を指定された関数にバインドするために、Gorilla でこれを別の方法で行う必要がありますか? また、サポートされていない関数で返される典型的な HTTP コードは何だろうと思います。私は400
範囲内のコードを想定していますが、どちらを使用すればよいかわかりません。200
リクエストは " " ではなかったので、そうであってほしくありませんOK
。
このテーマに関するアイデアやヒントはありますか?