Я использую Grails с RESTful для разработки моего веб-приложения. Все работает нормально, пока я не обновляю свое приложение до Grails 2.3. Вот мои urlMappings: Я по-прежнему отправляю запрос, отправляю или делаю некоторые другие вещи в обычном режиме, но в запросах POST, PUT параметры отсутствуют. Сервер просто распознает только параметры, которые я помещаю прямо в URL, но остальное я заключу в форме или модели, когда submit не может быть найден в переменной params. Он мой UrlMappings:Отсутствующие параметры с запросом RESTful при обновлении до Grails 2.3.0
class UrlMappings {
static mappings = {
"/$controller/$action?/$id?"{ constraints {} }
name apiSingle: "/api/$controller/$id"(parseRequest:true){
action = [GET: "show", PUT: "update", DELETE: "delete"]
constraints { id(matches:/\d+/) }
}
name apiCollection: "/api/$controller"(parseRequest:true){
action = [GET: "list", POST: "save"]
}
name api2: "/api/$controller/$action"(parseRequest:true)
name api3: "/api/$controller/$action/$id"(parseRequest:true)
"/"(view:"/welcome")
"500"(view:'/error')
}
}
Я прочитал последний документ Grails 2.3, в http://grails.org/doc/latest/guide/theWebLayer.html#restfulMappings
, но я думаю, что это не ясно. Я попробовал это, следуя документации, но не получив результата. И нет никаких примеров использования Grails 2.3 с RESTful для меня.
Как я могу заставить его работать нормально, как и раньше, и может получить доступ ко всем значениям параметров в запросе REST? Спасибо огромное!
Вы можете найти их в 'request' вместо' params'? – dmahapatro
@ dmahapatro: Нет, я до сих пор их не вижу. Но если да, то почему этот параметр привязан к «запросу» вместо «params», как обычно? –
Поскольку POST/PUT отправляет тело запроса, и в идеале нет необходимости в параметрах запроса. Но я не знаю, какова будет проблема в вашем случае, пока она не будет протестирована. – dmahapatro