接收application/x-www-form-urlencoded類型的請求,我的controller是如下處理
@PostMapping("/insert")
@ResponseBody
private ResultVO insert1(@RequestParam(value = "imei") String imei,@RequestParam(value = "data") String data) {}
然后獲取到imei和data是null
然后了解到x-www-form-urlencoded的請求是json的數據,應該如下處理
private ResultVO insert1(@RequestBody String body) {}
獲取到的body是imei=11111112&data=1%2C2%2C3%2C4%2C5%2C6%2C7%3B1%2C2%2C3%2C4%2C5%2C6%2C7
因為數據比較少,我把"%2C"轉成“,”,"%3B"轉成“;”,就可以拼湊成為imei=1&data=1,2,3,4,5,6,7;1,2,3,4,5,6,7
讓后字符串處理可以得到imei和data
后面我發現一種更好的方法:
@PostMapping("/insert")
@ResponseBody
private ResultVO insert1(@RequestParam Map<String, String> params) {}
獲取數據直接
String data=params.get("data");
String imei=params.get("imei");
可以正確解析x-www-form-urlencoded請求的參數