java - 如何从 thymeleaf 的 URL 中隐藏模型数据?

标签 java spring spring-boot thymeleaf

这是一些代码:
1.

@GetMapping(path = "/register", produces = MediaType.TEXT_HTML_VALUE)
public String register(@RequestParam("name") String name,
    RedirectAttributes redirectAttributes) {
    // call to service
    redirectAttributes.addAttribute("name", name);
    return "redirect:/success";
}
此端点首先被命中并使用提供的名称注册用户并重定向到成功页面。它还提供用户名。
2.
@GetMapping(value = "/success", produces = MediaType.TEXT_HTML_VALUE)
public String success(@ModelAttribute("name") String name, Model model) {
    model.addAttribute("name", name);
    return "success";
}
此端点将浏览器 URL 选项卡中的路径更改为 /success并显示 success.html模板。它还在模型中设置用户名,以便我们可以在 UI 上显示 ${name} registered successfully .success.html/templates 中的模板文件夹,我们希望在此操作结束后在 /success 上显示该文件夹页。
一切都按预期工作。问题?使用名称显示在 /success 的 URL 中页。
所以注册后,虽然我们希望 URL 只是 /success ,实际上是/success?name=John .可以隐藏请求参数部分吗?或者以某种方式发送正文中的数据而不是请求参数。
提前致谢,如果需要任何其他详细信息,请告诉我。

最佳答案

当然。例如可以通过使用 redirectAttributes.addFlashAttribute("name", name) 来完成。而不是 redirectAttributes.addAttribute("name", name)在第一个 Controller 中。
您可以获得更多信息 here .

关于java - 如何从 thymeleaf 的 URL 中隐藏模型数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69016574/

相关文章:

java - 当从构造函数调用时,关键字 "super"如何工作?

java - 交易和发送电子邮件

java - ConstraintViolationException : NOT NULL when using Spring, HSQL 和 Hibernate

javascript - 使用 Spring Boot 和 Zuul 进行 CORS 预检请求的 Host 与 Origin header

java - 避免 double -> 日期转换时的舍入错误

java - 如何读取 j2me 手机中的控制台输出? System.out.println() 到哪里去了?

java - 调用两次dispatchKeyEvent()

java - CORS Spring Security Oauth2

Spring Boot Kafka Streams - 绑定(bind)问题

spring-boot - Spring Cloud Stream - 发送和接收同步