Java獲取post請求json資料
阿新 • • 發佈:2019-01-01
一般情況下,web應用中,瀏覽器傳送http請求,傳引數的時候都是作為param傳遞的,java服務端通過request.getParameter(name)
可以獲取引數內容;
但是會有一些場景,把引數放在了http的payload中(contentType:”application/json”),這時,使用getParameter就獲取不到了, 比如下面這張圖,引數是json字串,放在了payload中
實際上,payload,就是http的body,通過讀取body,就獲取到了
1. 原生servlet獲取
http body通過讀取input流可以得到
12345678 |
br = new |
如果傳遞的是json,得到字串之後,再反序列化成json物件就可以了
2. springmvc獲取
SpringMVC中有一個@RequestBody
註解,就是用來將請求body中的json轉換為java物件的,不僅轉換普通的java bean,也可以是List,很方便
123456 | "/query", method = RequestMethod.POST)public ModelAndView queryList(@ModelAttribute("ReportBo") ReportBo query, @RequestBody ReportBo query1, HttpServletRequest request) { } | (value =