为了账号安全,请及时绑定邮箱和手机立即绑定

SpringMvc没有根据&符号截取参数

SpringMvc没有根据&符号截取参数

qq_遁去的一_1 2019-02-21 04:04:06
var url = $('input[name="itemCode"]').val() +'/join.html?userid='+ $('input[name="userid"]').val()+'&telphone='+phone+'&axdversion='+ version +'&itemId='+ $('input[name="itemId"]').val(); request.reqLocation(url); Js中拼出了一个url,之后便跳转Url。其中 reqLocation : function(url){ window.location = url; }, 后端代码: public ModelAndView registerHtml(String itemCode, Long itemId, Long userid, HttpServletRequest request, HttpServletResponse response) { ......//业务代码 } 但是在有些情况下会由于参数问题报错: 【/item/zxyh/join.html】【{userid=14&itemCode=xyz&itemId=8:}】 java.lang.NullPointerException at channel.web.item.OpenItemController.down(OpenItemController.java:468) at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorIm 正确的应该像这样: 【/item/zxyh/join.html】【{itemId:123},{itemCode:xyz},{userid:1}】 springMVC 并没有根据&符号,将各种参数赋值。所以导致我的itemCode之类的参数为空。js是手机端的,并且也只有少量请求会出现这种情况,想知道为什么,或者有没有人遇到同样的问题?
查看完整描述

4 回答

?
慕无忌1623718

TA贡献1744条经验 获得超4个赞

终于找到问题了!!
问题的原因应该是恶意攻击,利用工具注入了参数。具体怎么做的就不太清楚了。

查看完整回答
反对 回复 2019-03-01
?
萧十郎

TA贡献1815条经验 获得超13个赞

@RequestParam

百度之

查看完整回答
反对 回复 2019-03-01
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

这个好像跟SpringMVC没关系吧,如果JS中没有取到itemId,服务器端拿到的自然是NULL。

查看完整回答
反对 回复 2019-03-01
?
暮色呼如

TA贡献1853条经验 获得超9个赞

出错的情况下,前端调试下拼出的url中,各参数值是否正常,后端查看请求request中是否包含以上参数,以及它们的值

查看完整回答
反对 回复 2019-03-01
  • 4 回答
  • 0 关注
  • 430 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信