1.Xml配置
<http use-expressions="true" entry-point-ref="authenticationProcessingFilterEntryPoint" >
<beans:bean id="authenticationProcessingFilterEntryPoint" class="com.huazhu.hmall.security.MyAuthenticationProcessingFilterEntryPoint" >
<beans:property name="loginFormUrl" value="/login"></beans:property> 登录URL
</beans:bean>
2.过滤器配置
public class MyAuthenticationProcessingFilterEntryPoint extends LoginUrlAuthenticationEntryPoint {
@Override
public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) throws IOException, ServletException {
HttpServletRequest httpRequest = (HttpServletRequest) request;
if ("XMLHttpRequest".equals(httpRequest.getHeader("X-Requested-With"))) {
response.setCharacterEncoding("UTF-8");
response.getWriter().write("notLogin");//返回文字或Header头中加入状态
response.getWriter().flush();
} else {
super.commence(request, response, authException);
}
}
}
3.页面ajax配置
//全局的ajax访问,设置
$(function(){
$.ajaxSettings.complete = function(xhr,status){
if (xhr.responseText == 'notLogin') {
window.location = basePath + "/login";
}
}
});