request body与content-type使用小结

 

request body与content-type使用小结

 

只针对post请求说明

比较常见的Content-Type 有

1.application/x-www-form-urlencoded 浏览器原生的form表单

形式:key1=value1&key2=value2

提交的数据放在body中,取值方式:request.getParameter()、request.getParameterMap()

2.application/json 消息主体是序列化json字符串

形式:{"name":"小明","password":"123456"}

controller 的入参使用@RequestBody修饰,说明是要使用json的格式接收。request.getInputStream(),request.getReader() 获取。

并且getInputStream获取参数后,request.getParameter() 再不能得到参数。

有一些特殊要求,需要getInputStream多次获取参数,需要重写httpServletRequestSwapper,生成一份拷贝的request对象,通过一个自定义的filter,将重写的request替换原来的request。

3.multipart/form-data

通常上传文件的时候使用,request.getInputStream(),request.getReader() 获取。

 

 

https://www.jianshu.com/p/edabff9372f1

posted @ 2020-01-02 09:24  GordonDicaprio  阅读(1014)  评论(0编辑  收藏