在serlvet原生的API中,我们经常使用request.getParameter获取请求参数,在一次小测验中,我发现有时候返回值为空值,有时候返回值为空串。也是上网查了一下,在这里做一个小总结。
这里为什么只提到了post请求,因为get请求都是把参数放在params属性下,所以没得选,发送过程中参数被拼接到了url上,从控制台看url后面参数是?param1=XX&&post请求的情况比较多
xios发送post请求参数有两种传法,一种是放在data属性中,如果传参中含有引号、等号、拼接的json串或传参的数据量较大时只能用这种
这种方式如果在后台request.getParameter()请求获取到的值为null,后面再执行这个代码也会报空指针异常,因为data返回的值是json对象形式
想要用data属性获取值的话要使用要把它转换为对象传过来
一种是放在params属性中,适合传参较少且数据简单的情况
使用params属性再后台用request.getParameter()就可以获取到想要的值