spring - 当 redirectAttributes.addFlashAttribute() 在 IFRAME 中运行时 Spring FlashMap 为空
问题描述
考虑以下控制器:
@PostMapping(value = "/reg")
public String submitRegistration(
@Valid @ModelAttribute(name = REGISTRATION_FORM) RegistrationForm registrationForm,
BindingResult bindingResult,
Model model,
RedirectAttributes redirectAttributes) {
var messages = new ArrayList<String>();
// ... do something and then ...
redirectAttributes.addFlashAttribute("messages", messages);
return "redirect:/success";
}
@GetMapping(value = "/success")
public String showSuccess(@PathVariable String schoolUrl, Model model, HttpServletRequest request) {
Map<String, ?> inputFlashMap = RequestContextUtils.getInputFlashMap(request);
if (inputFlashMap != null) {
// display messages
当从“普通”网页调用 POST 并使用消息填充上下文时,这很有效。当我在 IFRAME 中运行应用程序时,redirectAttributes 会丢失。为什么?
到今天为止,所有使用的框架都是最新的。如果这不是弹簧核心中的错误,我对 IFRAME 有什么误解?
解决方案
推荐阅读
- c# - 如何解决 Visual Studio 上的错误 80080204?
- reactjs - React-GA + Redux v7 与 jest 不兼容问题
- swift - 试图用swift擦除uiimage
- reactjs - 将对象数组作为状态处理的问题
- r - 如何将基于不同数据集的图层与 R 中的 ggplot2 结合起来
- python - 如何修复不一致的 UnicodeEncodeError 读取/打开文件
- java - 如何检查客户端是否连接到UDP Java中的服务器
- python-3.x - 如何使用for循环在python中创建多个子图?
- java - 如何获取指定关键字在 iText7 中的位置?
- c# - 从数据库中检索具有名称的图像到 ListView