java - 如何重定向和授权在ajax成功中返回jsp页面的同一url

标签 java ajax spring-security

我有一个返回 JSP 页面的 Spring Boot Controller 方法。我有 Spring Security 实现来授权每个请求。这是我的 Controller ,单击图标后会返回主页。

@RequestMapping("/home")
public String getDataForHome(HttpServletRequest request, Model model)
{
   return "/dashboard";
}

现在返回首页的图标是-

<img src="<%=contextPath%>/assets/img/logo.png" onclick="handleClick();">

handleClick函数的实现,其中ajax调用授权 Controller 并在ajax成功时重定向到主页 -

function handleClick(){
    $.ajax({
            url: "<%=contextPath%>/home",
            headers: {
                'Authorization':'${sessionScope.token}'
            },              
            type: 'GET',
            success: function(data){
               window.location='<%= contextPath %>/home';
            }
            error:function(e){
                console.log(e);
            }
         });
 }

现在单击图像会显示该请求需要完整的身份验证。

最佳答案

如果您配置了view resolver使用返回“仪表板”(不带/)

如果您尝试将请求转发到请求中的另一个 Controller 句柄,请使用return "forward:/dashboard"

如果您想重定向到新请求,请使用返回“redirect:/dashboard”

关于java - 如何重定向和授权在ajax成功中返回jsp页面的同一url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59100523/

相关文章:

java - Eclipse 默认构建和 ant 构建

java - Weblogic JMS 服务器的巨大存储空间

php - 如何在同一文件中将值从 AJAX 和 JQuery 传递到 PHP

grails - 在Grails/spring security中收集/定义最后访问的信息的最佳方法是什么?

Spring Security - 如果已经登录则重定向

java - 默认 spring-security 配置中匿名身份验证提供程序的用途

java - 尝试创建三个类并绘制蜡笔盒。如何在构造函数中绘制蜡笔?

java - 如何获取用作方法参数的类的类型?

javascript - JS,如何检测打印窗口的打印请求?

javascript - 在多个浏览器窗口中使用 sam AJAX 的最佳实践?