2017-04-19 52 views
0

使用Springboot建設項目。當您不使用Springboot構建項目時,可以使用配置來解決問題,但現在我不知道如何配置它。Springboot返回JSON,IE瀏覽器嘗試下載JSON作爲文件

@RestController 
public class RestShowNameController { 
    @RequestMapping("/myself") 
    public ModelAndView index() { 
     return new ModelAndView("index"); 
    } 

    @RequestMapping("/object") 
    public User object() { 
     User user = new User(); 
     user.setName("綠秋"); 
     user.setComment("系統管理員用戶"); 
     return user; 
    } 
} 
+0

這段代碼有一些錯誤?或者你想學習配置Springboot? – Teocci

+0

是的,我沒有配置 – user7886944

+1

當你從一個方法返回'ModelAndView'時,你不能使用'@ RestController',那麼你需要'@ Controller'。當改變這個時,你需要在你的'object()'方法中添加'@ ResponseBody' –

回答

0

這是IE的屬性來提示打開JSON文件。如果您將在其他瀏覽器(如chrome)中嘗試此操作,它將直接在屏幕上顯示結果。

如果你想改變的方法也顯示在屏幕上的IE瀏覽器。一種方式可以是改變返回字符串的方法中,作爲 你正在返回一個對象作爲響應,並默認其得到轉化爲JSON:

@RestController 
public class RestShowNameController { 
    @RequestMapping("/myself") 
    public ModelAndView index() { 
     return new ModelAndView("index"); 
    } 

    @RequestMapping("/object") 
    @ResponseBody 
    public String object() { 
     User user = new User(); 
     user.setName("綠秋"); 
     user.setComment("系統管理員用戶"); 
     return user.toString(); 
    } 
} 

在用戶類覆蓋toString()方法和格式化結果。

@Override 
public String toString() { 
    return "User [name =" + name + ", comment =" + comment + "]"; 
} 
相關問題