2014-10-10 58 views
7

我使用Spring MVC和AngularJs來創建一個Web應用程序。我發送一個請求到服務器,但我得到400 error bad request。我在Spring servlet配置文件中爲json格式配置了消息轉換器。我想知道爲什麼我得到這個錯誤。爲什麼我通過AngularJs發佈400個不好的請求?

這裏是我的角度服務:

save : function(user) { 
    return $http({ 
     method: 'POST', 
     url: '/app-web/user/create', 
     contentType: "application/json", 
     data:user 
    }); 
} 

而在服務器端我有一個Spring MVC控制器,如下所述:

@RequestMapping(value="/user/create", method= RequestMethod.POST) 
@ResponseBody 
public String createAccount(@RequestBody User user){ 
    //some logic 
    return "Ok"; 
} 

我發現別的東西:當我刪除了@RequestBody控制器我沒有400錯誤,但用戶是null

@RequestMapping(value="/user/create", method= RequestMethod.POST) 
@ResponseBody 
public String createAccount(User user){ 
    //some logic 
    return "Ok"; 
} 
+0

您傳入的「用戶」對象是否有值或爲空? – Losbear 2014-10-10 20:44:51

+0

我無法訪問Spring MVC控制器。在Angularjs控制器中,用戶的值爲 – Pracede 2014-10-10 20:46:51

+0

如果您使用Chrome或IE並打開開發人員工具(F12)並在行「save:function(user){」)上放置斷點。運行它,當代碼碰到斷點時,將鼠標懸停在「用戶」上。出現工具提示並顯示您正在懸停的項目的值。它是否表示爲空或它是否有價值?另一個要嘗試的是查看它嘗試訪問的確切URL(再次使用開發人員工具)。它嘗試訪問的確切URL可能與您所期望的不同。 – Losbear 2014-10-10 20:54:08

回答

4

問題在於用戶表單。我有姓,名,電子郵件,密碼,密碼1,但用戶Java對象不包含密碼1屬性。當請求提供的json數據與Java對象不一致時,JsonConverter無法與數據匹配到Java Object。

+0

很高興你知道了! – Losbear 2014-10-20 13:02:51

+0

@Pracede我有同樣的問題,顯示在螢火蟲上的輸入是 {「id」:null,「name」:「qweqweqwe」,「users」:{「id」:3,「username」:「Kaminee」, 「密碼」:「1234」,「email」:「kim @ mail 。com「,」address「:」bhumkar「,」country「:{」countryId「:1,」countryName「:」印度「}}} – Kamini 2016-09-08 08:50:11

相關問題