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

具有空请求参数的路径的请求映射

具有空请求参数的路径的请求映射

至尊宝的传说 2021-09-03 14:48:15
我需要为 /jsp/login 和 /jsp/login?error 设置一个映射请注意,我不能使用 /jsp/login?error=someval 然后检查 param 是否具有该值或默认值。= 在这种情况下不允许在参数之后。这对弹簧可行吗?为了澄清上述内容,我已经将代码如下:@RequestMapping("/jsp/login")public String login(@RequestParam(value = "error", required = false) String error, Map<String, Object> model) {        if(error != null && !error.isEmpty()) {            model.put("message", "wrong user id or password");        }        return "login";}所以请求 /jsp/login 和 /jsp/login?error 都被映射为 error = null as required = false。如果 url 类似于 /jsp/login?error=yes,则错误 != null要求:error != null 即使 /jsp/login?error 没有任何参数值
查看完整描述

2 回答

?
qq_遁去的一_1

TA贡献1725条经验 获得超7个赞

对的,这是可能的


@RequestMapping (value = "/jsp/login", method = RequestMethod.GET)

public String showLoginWindow(@RequestParam(value = "error", required = false) String errorStr) throws LoginException {...}

重要的部分是required = false,所以如果你调用/jsp/loginerrorStr 的值为 null。


查看完整回答
反对 回复 2021-09-03
?
慕莱坞森

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

是 - 您可以有可选的请求参数。


    @RequestMapping(value = "/jsp/login", method = RequestMethod.GET)

    public @ResponseBody String handleLogin(

            HttpServletRequest req,

            @RequestParam(value="error",required = false) String error) {

        //TODO: write your code here

        return "success";

    }


查看完整回答
反对 回复 2021-09-03
  • 2 回答
  • 0 关注
  • 143 浏览

添加回答

举报

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