我在类级别设置了@RequestMapping("/vehicle")
的Spring Controller类。这个类的一种方法是
@RequestMapping(method = RequestMethod.GET)
@ResponseBody
public Vehicle getVehicleByRegistration(
@RequestParam(value="doAs", required = true) String doAsUser,
@RequestParam(value="registration", required = true) String registration) throws IOException {
return vehicleController.getByIndex(registration, doAsUser);
}
我发送的查询就像:
curl -iv localhost:8096/vehicle/?doAs=user®istration=ABC1234
执行时,我得到一个包含以下内容的回复:
"exception":"org.springframework.web.bind.MissingServletRequestParameterException","message":"Required String parameter 'registration' is not present"
如果我颠倒了网址中doAs
和registration
的顺序,则错误会显示'doAs' is not present
。
如果我修改方法只采用一个参数(doAs
或registration
),那么它可以正常工作。
这里出了什么问题?我已尝试在param
中使用@RequestMapping
,但这也无效。
答案 0 :(得分:3)
你没有保护&符号来保护shell,这就是为什么你也得到了其他奇怪的shell输出。将URL放在引号中。
答案 1 :(得分:0)
尝试引用你要传递给卷曲的网址,在其他帖子中,我看到了&ampersant正在处理这项工作。 尝试:
curl -iv“localhost:8096 / vehicle /?doAs = user& registration = ABC1234”