springboot @RequestBody 接收字符串
生活随笔
收集整理的這篇文章主要介紹了
springboot @RequestBody 接收字符串
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
前言
- springboot 2.1.1.RELEASE
@RequestBody 接收字符串
@RequestMapping(method = {RequestMethod.POST})public ResultEntity form1(@RequestBody String requestBody) throws UnsupportedEncodingException {logger.info("================ request body ================");\logger.info("request body is : {}", requestBody);}向接口傳送 application/json 格式的數(shù)據(jù)
客戶端調用代碼如下:
$.ajax({url:'http://localhost/api/spd',data: JSON.stringify({name:'zhangsan', age: 18}),type:'POST',contentType: 'application/json',success:function(result){console.log(result);},error:function(error){console.log(error);} });服務端執(zhí)行結果:
00:11:55.972 [http-nio-8020-exec-5] INFO c.c.api.SpdApi - [form1,45] - request body is : {"name":"zhangsan","age":18}向接口傳送 text/plain 格式的數(shù)據(jù)
客戶端調用代碼如下:
$.ajax({url:'http://localhost/api/spd',data: 'this is a message',type:'POST',contentType: 'text/plain',success:function(result){console.log(result);},error:function(error){console.log(error);} });服務端執(zhí)行結果:
23:46:04.953 [http-nio-8020-exec-1] INFO c.c.api.SpdApi - [form1,45] - request body is : 'this is a message'替代 @RequestBody 的辦法
如果不想用 @RequestBody ,可以使用下面的方法:
protected String getRequestBody(HttpServletRequest request) {try {BufferedReader reader = request.getReader();char[] buf = new char[512];int len = 0;StringBuffer contentBuffer = new StringBuffer();while ((len = reader.read(buf)) != -1) {contentBuffer.append(buf, 0, len);}return contentBuffer.toString();} catch (IOException e) {e.printStackTrace();}return "null";}總結
以上是生活随笔為你收集整理的springboot @RequestBody 接收字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 两个不同的路由器怎么桥接两个不同牌子的无
- 下一篇: 严重: A child containe