我有一個Angular前端向我的服務器發送JSON更新,但Grails在控制器中看不到它。我剛剛升級到Grails 2.5。 我有我的EpisodeController控制器方法稱爲 '/ addGuest':request.JSON在Grails中爲空
def addGuest(Episode episode) {
println "J: "+ request.JSON;
}
,我把從角
service.addGuest = function(episode, guest) {
return $http.put(getUrlForId(episode.id)+"/addGuest", {guest: guest});
}
以下客人JSON看起來像
{guest: {name: "a", email: "a"}}
我的路線是
"/episode/$id/addGuest"(method: 'PUT', controller: "episode", action: "addGuest", parseRequest: true)
但是,當我從Angular或Rest Console chrome插件發送數據時,request.JSON始終爲空「[:]」。如果我將RestConsole中的Content-type從'application/json'更改爲'text/plain',則數據顯示!有數據通過json進入似乎是一個基本的東西,應該只是工作,所以我敢肯定,我已經搞砸了。任何幫助將不勝感激。謝謝。
你有沒有json:['application/json','text/json'] MIME類型定義在你的config.groovy上? – dsharew 2015-04-02 15:35:02
是的,我切換它們只是爲了看看是否有什麼會改變,但該行在那裏:「json:['text/json','application/json'],」 – MattGrommes 2015-04-02 15:39:34
可能是你的休息客戶端的問題先進的休息客戶端(鉻擴展)使用應用程序/ JSON和它工作正常。 – dsharew 2015-04-02 15:46:06