Не могу получить id get запроса в golang

Написал следующий код:

routers.go

...
    r.HandleFunc("/api/user/{id}", controllers.APIGetUser).Methods("GET")
...

В функции APIGetUser пытаюсь получить значение id следующий образом:

func APIGetUser(w http.ResponseWriter, r *http.Request) {
params, found := mux.Vars(r)["id"]
    if !found {
        log.Println(": [INFO] Id not found ")
    }
    var user models.Users
    db.Find(&user, params)
    json.NewEncoder(w).Encode(user)
}

Но при запросе вида ../api/user/1 в лог пишет "ID not found", т.е. id по какой-то причине не найден. Через отладку смотрел значение переменой params, всегда mux.Vars(r)["id"] возвращает пустое значение - "".

В чём может быть проблема, так как поискав информацию, везде указывают такой метод получения параметра get запроса.


Ответы (0 шт):