成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

java - SpringMvc沒有根據&符號截取參數

瀏覽:178日期:2024-02-02 09:58:23

問題描述

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是手機端的,并且也只有少量請求會出現這種情況,想知道為什么,或者有沒有人遇到同樣的問題?

問題解答

回答1:

終于找到問題了!!問題的原因應該是惡意攻擊,利用工具注入了參數。具體怎么做的就不太清楚了。

回答2:

@RequestParam

百度之

回答3:

這個好像跟SpringMVC沒關系吧,如果JS中沒有取到itemId,服務器端拿到的自然是NULL。

回答4:

出錯的情況下,前端調試下拼出的url中,各參數值是否正常,后端查看請求request中是否包含以上參數,以及它們的值

標簽: java
相關文章: