2011-02-04 39 views
3

我在想根據Spring Controller方法的邏輯在相同方法內返回HTML或JSON的正確方法。我在.NET中完成了這個工作,只需要知道如何在Spring中做到這一點。在Spring Controller方法中返回HTML或JSON

UserModel user = new UserModel();  
    user.setFirstName("Michael"); 
    user.setLastName("Flynn"); 

    model.getList().add(user); 
    model.setSearchTerm("test"); 

    if(true) 
    { 
     return new ModelAndView("controls/tables/users", "model", model); 
    } 
    else 
     return model; 
+0

此主題的所有更新?任何可接受的肛門? – Confuser 2018-03-02 11:50:15

回答

0

我最近需要弄明白這一點,並且幸運地用SpringSource的this博客文章。

+0

這僅適用於JSON。它不談論返回一個或另一個,以及如何去做。 – 2011-02-04 21:18:14

0

我假設請求使用標準HTTP內容協商指示他們想要哪種格式。如果是這樣,你可以使用ContentNegotiatingViewResolver。它還支持使用URL的「擴展名」來選擇格式,例如:http://localhost/content.json將選擇JSON,而http://localhost/content.html將選擇HTML。

+0

如果用戶知道他們想要什麼,那將會很棒。但我想要返回HTML或JSON,具體取決於是否發生錯誤。返回HTML基本上是成功的,而返回JSON意味着錯誤。我有JavaScript將處理客戶端的兩種情況,以測試它是HTML還是JSON。客戶端的JavaScript很好,因爲我在.NET中做了同樣的事情。我的問題是我不確定輸出的請求的內容類型。 – 2011-02-05 03:38:40

相關問題