[英]Is there any way to configure spring mvc to assume a content-type?
我有一種方法要發布一些json數據,看起來像這樣
@RequestMapping(value = "/m1", method = RequestMethod.POST)
public Object m1(@RequestBody Map<String, ?> body) {
// do something
}
當我在發布時將content-type
標頭設置為application/json
時,此方法效果很好,但如果不這樣做,則會失敗並返回錯誤(因為它不知道如何無法將發布主體反序列化到地圖中)
在未指定標頭的情況下,我必須在spring中進行哪些配置才能使其默認使用application/json
?
將JSON轉換為對象的類稱為HttpMessageConverter
。 我假設您使用的是Spring附帶的默認Jackson。 您可以編寫一個自定義MessageConverter
,該方法將始終使用響應對象類型在其supports方法中返回true,然后只需在您的readInternal和writeInternal方法中調用Jackson的httpconverter即可。 但是,如果執行此操作,請小心,因為在請求處理程序中注冊了該請求后,所有@ResponseBody
和@RequestBody
請求都將詢問它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.