中山网站制作方案,湖南软件定制开发,做网站开发 用的最多的语言,泰州网站建设多少钱1. 前端能携带请求参数的地方
http请求一半前端请求参数放在三个地方#xff1a;请求头#xff0c;请求查询参数#xff08;Query String#xff09;#xff0c;请求体。 请求体需要获取HttpServletRequest对象才能获取。
2. 请求体常见格式
而请求体中可以存放多种格式…1. 前端能携带请求参数的地方
http请求一半前端请求参数放在三个地方请求头请求查询参数Query String请求体。 请求体需要获取HttpServletRequest对象才能获取。
2. 请求体常见格式
而请求体中可以存放多种格式的数据前端通过发送的请求头参数content-type来表示自己放在请求体中参数的格式是什么。一般常见的也有三种form-datax-www-form-urlencodedapplication/json。 还有很多很多中请求体格式但是其他格式很少使用本文也会对其如果接收进行总结。
3. 什么时候用RequestBody
如果接收的是请求体并且请求体是application/json就用RequestBody注解。
4. RequestParam
如果接收请求查询参数url或者请求体form-data或x-www-form-urlencoded格式那么可以直接用相同名称请求参数对象去接收或者用javabean去接收。如果接收的对象和请求的参数名不相同就需要用RequestParam来指定需要接收哪个。
5. 例子
同时接收请求体和请求查询参数Query String并且同时使用javabean和string来接收querystring。 接收正常
6. 总结
接收json类型的请求体就在接收参数上加RequestBody。其他情况直接用自定义对象或者内置数据类型对象不用加注解接收如果需要指定接收哪个参数就加RequestParam。如果你的参数中有HttpServletRequest类型的参数也会被自动注入。通过HttpServletRequest对象可以获取请求的所有内容包括请求头请求查询参数url请求体。
7. 接收请求体类型为application/octet-stream
application/octet-stream表示请求体内容为二进制数据没有键值对。类似于直接读取文件流。 直接通过httpServletRequest.getInputStream()获取请求体的流。