gpt4 book ai didi

spring-mvc - Spring 3——如何从转发器执行 GET 请求

转载 作者:行者123 更新时间:2023-12-01 12:45:33 25 4
gpt4 key购买 nike

我正在尝试将请求转发到另一个接受 GET 请求的 Spring Controller ,但它告诉我不支持 POST。这是我的第一个 Controller 方法的相关部分,它接受 POST 请求,因为我将它用于登录功能。

@RequestMapping(value = "/login", method = RequestMethod.POST)
public String login(@ModelAttribute("administrator") Administrator administrator,
Model model) {
// code that's not germane to this problem
return "forward:waitingBulletins";
}

这是我尝试转发的方法。

@RequestMapping(value = "/waitingBulletins", method = RequestMethod.GET)
public String getWaitingBulletins(Model model) {
// the actual code follows
}

这是我浏览器中的错误消息。

HTTP Status 405 - Request method 'POST' not supported

--------------------------------------------------------------------------------

type Status report

message Request method 'POST' not supported

description The specified HTTP method is not allowed for the requested resource (Request method 'POST' not supported).

最佳答案

forward 保持原始请求不变,因此您正在转发 POST 请求并缺少处理程序。

从表面上看,您真正要实现的是 POST-redirect-GET模式,它使用重定向而不是转发。

您只需将POST 处理程序更改为:

@RequestMapping(value = "/login", method = RequestMethod.POST) 
public String login(@ModelAttribute("administrator") Administrator administrator,
Model model) {
// code that's not germane to this problem
return "redirect:waitingBulletins";
}

让它发挥作用。

关于spring-mvc - Spring 3——如何从转发器执行 GET 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16380558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com