gpt4 book ai didi

spring - "Request method ' POST ' not supported"放置安全注释后

转载 作者:行者123 更新时间:2023-12-02 04:58:37 25 4
gpt4 key购买 nike

我有 2 个 Controller :

一)

@Override
@RequestMapping(value = "/portal/form.html", method = RequestMethod.GET)
@Transactional
public String form(final Message message, final Model model) {
return "portal/form";
}

二)

@Override
@RequestMapping(value = "/portal/form.html", method = RequestMethod.POST)
@Transactional
@PreAuthorize("#message.id!=null ? hasPermission(#message, 'WRITE') : hasRole('ROLE_ADMIN')")
public String form(@Valid final Message message, final Model model) {
if (message.getId() == null) {
someService.save(message);
AclManager.create(message);
} else {
someService.update(message);
AclManager.update(message);
}
return "redirect:result.html";
}

在我将安全注释放入 Controller “b”之前,一切都很好。现在,当我转到 Controller “a”的页面并填写表格时,单击导致 Controller “b”的按钮,我得到“HTTP 状态 405 - 不支持请求方法‘POST’”。为什么会发生这种情况以及如何解决?

UPD:我帮助添加到登录 Controller RequestMethod.POST

最佳答案

如果没有您的 spring 安全配置很难调试,但我猜当您转到/portal/form.html spring 将您重定向到使用 HTTP POST 的登录页面,而您的登录页面 Controller 处理程序仅映射到 HTTP GET .尝试将登录页面处理程序映射到 POST 方法。

关于spring - "Request method ' POST ' not supported"放置安全注释后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17476394/

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