首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >POST和GET用于相同的URL - Controller - Spring

POST和GET用于相同的URL - Controller - Spring
EN

Stack Overflow用户
提问于 2018-05-19 21:11:45
回答 3查看 2.8K关注 0票数 3

我有这个控制器:

代码语言:javascript
复制
@Controller
public class HelloWorldController {

    @RequestMapping("/hello.html")
    public ModelAndView helloWorld() {

        String message = "Hello World, Spring 3.0!";
        return new ModelAndView("hello", "message", message);
    }

    @RequestMapping(value = "/login", method = RequestMethod.GET)
    public String viewLogin(Map<String, Object> model) {
        User user = new User();
        model.put("userForm", user);
        return "LoginForm";
    }

    @RequestMapping(value = "/login", method = RequestMethod.POST)
    public String doLogin(@Valid  @ModelAttribute("userForm")  User userForm,
            BindingResult result, Map<String, Object> model) {

        if (result.hasErrors()) {
            return "login";
        }

        return "LoginSuccess";
    }
}

我有两个方法,对于相同的url /login有不同的http方法,所以当单击第一个url 'localhost:8080/project_name/login‘时,第一个带有GET的方法将被处理,并将我重定向到/LoginForm

因此,根据我的理解,第二个方法处理程序将不会被执行,因为对/login的请求总是使用GET.

如果我的理解是错误的,请向我解释如何执行第二种方法,谢谢。

EN

Stack Overflow用户

发布于 2018-05-21 20:24:23

click here

浏览器默认选择GET方法。因此,如果你尝试一下postman,你就会看到不同之处。您可以选择GET / POST。对于实时,他们也会从UI中提到具体的GET请求/ Post请求,所以不用担心。

你可以用邮递员找个更好的办法

票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50425667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档