Java 具有spring安全性的特定页面的url

Java 具有spring安全性的特定页面的url,java,email,spring-security,hyperlink,Java,Email,Spring Security,Hyperlink,我有一个Spring启动应用程序 我需要发送包含系统特定页面的直接url的电子邮件,例如: 请点击以下链接接受此优惠: 期望的行为如下所示: 用户单击电子邮件中包含的链接 此时将显示登录页面 用户登录并打开链接的特定页面 但这是行不通的。当用户单击URL时,他直接进入主页,而不是链接中包含的特定页面 我在控制器中有此方法: @GetMapping("/home") public String menu(Model model) { return &qu

我有一个Spring启动应用程序

我需要发送包含系统特定页面的直接url的电子邮件,例如:

请点击以下链接接受此优惠:

期望的行为如下所示:

  • 用户单击电子邮件中包含的链接
  • 此时将显示登录页面
  • 用户登录并打开链接的特定页面
  • 但这是行不通的。当用户单击URL时,他直接进入主页,而不是链接中包含的特定页面

    我在控制器中有此方法:

    @GetMapping("/home")
    public String menu(Model model) {   
        
        return "home";
    }
    
    这是Spring安全配置类:

    ...
    .formLogin()
                .loginPage("/login")
                .permitAll()
                .defaultSuccessUrl("/home", true)
            ...
    
    有人知道我该怎么做才能让它正常工作吗

    非常感谢


    关于,

    请尝试将
    .defaultSuccessUrl(“/home”,true)
    更改为
    .defaultSuccessUrl(“/home”,false)
    是!太简单了!你能解释一下这个真/假是什么意思吗?非常感谢你!!很高兴你工作了!请看。最后一个参数是
    alwaysUse
    ,文档显示“指定如果用户在进行身份验证之前未访问安全页面或alwaysUse为true,则在成功身份验证后将重定向到何处。如果为
    true
    ,用户将始终被发送到定义为
    defaultSuccessUrl
    的url。非常感谢!精彩的解释!