java - SpringMvc沒有根據(jù)&符號截取參數(shù)
問題描述
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,之后便跳轉(zhuǎn)Url。其中
reqLocation : function(url){ window.location = url; },
后端代碼:
public ModelAndView registerHtml(String itemCode, Long itemId, Long userid, HttpServletRequest request, HttpServletResponse response) { ......//業(yè)務(wù)代碼}
但是在有些情況下會由于參數(shù)問題報錯:
【/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
正確的應(yīng)該像這樣:
【/item/zxyh/join.html】【{itemId:123},{itemCode:xyz},{userid:1}】
springMVC 并沒有根據(jù)&符號,將各種參數(shù)賦值。所以導(dǎo)致我的itemCode之類的參數(shù)為空。js是手機端的,并且也只有少量請求會出現(xiàn)這種情況,想知道為什么,或者有沒有人遇到同樣的問題?
問題解答
回答1:終于找到問題了!!問題的原因應(yīng)該是惡意攻擊,利用工具注入了參數(shù)。具體怎么做的就不太清楚了。
回答2:@RequestParam
百度之
回答3:這個好像跟SpringMVC沒關(guān)系吧,如果JS中沒有取到itemId,服務(wù)器端拿到的自然是NULL。
回答4:出錯的情況下,前端調(diào)試下拼出的url中,各參數(shù)值是否正常,后端查看請求request中是否包含以上參數(shù),以及它們的值
相關(guān)文章:
1. PC端訪問卻變成移動端地址問題#python#scrapy2. javascript - 京東首頁如何實現(xiàn)pc端和移動端加載不同的html的?3. javascript - 阿里云虛擬主機怎么運行webpack打包的vue餓了么web-app4. angular.js使用$resource服務(wù)把數(shù)據(jù)存入mongodb的問題。5. javascript - uc、qq、搜狗 以上三個手機瀏覽器判斷移動端的js代碼不執(zhí)行6. python - nginx+uwsgi啟動提示 nginx: [emerg] unknown directive "socket"?如何解決?7. python3.x - python3.5使用pyinstaller打包報錯找不到libpython3.5mu.so.1.0等文件求解?8. python round 四舍五入?9. python - 請問django的orm能否獨立拿出來使用?例如在非web程序中使用10. mysql優(yōu)化 - mysql like語句會導(dǎo)致全表掃描?
