javascript - Spring应用程序在登录后调用最后一个ajax调用

标签 javascript java ajax spring-mvc get

过去几天我面临着大问题。

当我在应用程序中搜索任何值时,如果 session 已过期,我的应用程序将重定向到完美的登录页面。

但是当我再次登录时,应用程序显示最后一个 GET ajax 调用(我正在搜索)并在浏览器中显示结果 JSON。但它应该显示主页。

我的代码如下;

// Document Ready() Starts

$("#grid_id").jqGrid({
                url :"search/getHouseholdHistoryList",
                async : false,
                type: 'GET',
                datatype: 'json',
                postData: {
                    searchHHID: function() { return $("#txt_SearchID").val(); },
                    filterKey:  function() { return $('#ulSearch_TypeOfID li.selected').attr('value') }
                },
                colNames:mainGridColNames,
                colModel: [
                    { name:'incidentID', index:'incidentID', width:110,sortable:true},
                    { name:'incidentCreatedDate', index:'incidentCreatedDate', width:160, sortable:false},
                    { name:'incidentSummary', index:'incidentSummary', width:482,sortable:false},
                    { name:'incidentStatus', index:'incidentStatus', width:120, sortable:false},
                    { name:'actionLink', index:'actionLink', width:100, sortable:false}
                ],
                viewrecords: true,
                //autowidth:true,
                width: '100%',
                height:'150',
                rowNum: 10,
                rowList:[10,20,30], 
                rownumbers: false,
                sortorder: "desc",
                ignoreCase: true,
                loadonce: true,
                jsonReader: { repeatitems: false },
                pager: 'gridpager',
                direction:'ltr'
            }).jqGrid('navGrid','gridpager',
                      {edit:false, add:false, del:false, search:true, refresh:true});

//Document Ready() Ends

我正在使用 -Spring MVC。 -JSP -Jquery - Ajax

如果还有其他需要,请告诉我。

最佳答案

听起来您是在从过期 session 中查看应用程序时提交 ajax 请求。因此,一旦到达安全的“search/getHouseholdHistoryList”端点,Spring Security 就会提示您登录以显示结果。它不知道您在上一个 session (现已过期)中在应用程序中停止的位置。因此它所知道的就是将“search/getHouseholdHistoryList”的结果返回到您的浏览器。

您需要在提交请求之前检查您的 session 是否已过期,并将页面重定向到登录页面。由于我不使用 JSP,因此我对 Spring Security JSP 标记不太熟悉,但必须有一种方法以某种形式检查当前 session 的有效性并采取相应的操作。

关于javascript - Spring应用程序在登录后调用最后一个ajax调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35866241/

相关文章:

javascript - 如何访问foreach语句中的选择器?

javascript - 试图让 window.URL 在 IE8 中工作。获取未定义的错误

javascript - Jquery 平滑滚动动画无法正常工作

java - 函数接口(interface)的回调接口(interface)

java - 哪个方面/拦截器处理@Transactional注释

java - 防止双击 OnClickListener

jquery - tomcat 服务器 (GWT) 上的 $.ajax 意外 token 错误

javascript - 取一个最大尺寸的div,让它们都一样

javascript - 单击提交按钮时如何放置进度光标

javascript - 从 get ajax 调用中获取变量