java 获取request中的请求参数代码详解
程序员文章站
2023-11-21 09:55:16
1、get 和 post请求方式
(1)request.getparameternames(); 获取所有参数key后。遍历request.getparame...
1、get 和 post请求方式
(1)request.getparameternames(); 获取所有参数key后。遍历request.getparameter(key)获取value
(2)request.getparametermap() 。直接包含参数key和value值,简单方便
map<string, string[]>maps = request.getparametermap(); for (map.entry<string, string[]> entry : maps.entryset()) { string cs = entry.getkey() + ":"+arrays.tostring(entry.getvalue())+";"; }
2、获取请求类型为request payload方式
这里就不介绍文件流的了,主要针对 后端采用@requestbody方式的请求
这类数据通过以上2种方式是获取不到的,它是存放在流里面,要通过getinputstream()
或getreader()
方式获取
public string getrequestdata(httpservletrequest httpservletrequest){ httpservletrequestwrapper httpservletrequestwrapper = new httpservletrequestwrapper(httpservletrequest); stringbuilder sb = new stringbuilder(); bufferedreader reader = null; inputstreamreader inputstreamreader=null; servletinputstream servletinputstream =null; try { servletinputstream = httpservletrequestwrapper.getinputstream(); inputstreamreader=new inputstreamreader (servletinputstream, charset.forname("utf-8")); reader = new bufferedreader(inputstreamreader); string line = ""; while ((line = reader.readline()) != null) { sb.append(line); } } catch (ioexception e) { return ""; }finally { try { if(servletinputstream!=null){ servletinputstream.close(); } if(inputstreamreader!=null){ inputstreamreader.close(); } if(reader!=null){ reader.close(); } } catch (ioexception e) { } } return sb.tostring (); }
需要注意的是getinputstream()
这种获取流的方式 只能用一次,如果多次调用 需要缓存起来,不然流的数据到不了controller层,报400错误
总结
以上所述是小编给大家介绍的java 获取request中的请求参数的代码详解,希望对大家有所帮助
下一篇: UG怎么创建一条圆珠手链?
推荐阅读
-
java 获取request中的请求参数代码详解
-
Servlet | Request 对象获取请求参数的通用方式
-
Java--获取request中所有参数的方法
-
Spring在代码中获取bean的几种方式详解
-
微信小程序授权 获取用户的openid和session_key【后端使用java语言编写】,我写的是get方式,目的是测试能否获取到微信服务器中的数据,后期我会写上post请求方式。
-
java通过HttpServletRequest获取post请求中的body内容的方法
-
js中获取URL参数的共用方法getRequest()方法实例详解
-
详解angular中通过$location获取路径(参数)的写法
-
jsp页面中获取servlet请求中的参数的办法详解
-
JS获取url参数并保存在对象中的代码教程