使用拦截器一直出现重定位死循环,但是不知道怎么更改,希望只能直接访问入口页面
拦截器1
放行登录页 静态资源
拿请求的url去比较一下就好了,这么简单
Object obj = request.getSession().getAttribute("uid"); if (obj == null && !request.getRequestURI().contains("userLogin.html")) { response.sendRedirect("/web/userLogin.html"); return false; } return true;
package com.yzpnb.aclservice.controller;
import com.alibaba.fastjson.JSONObject;
import com.yzpnb.aclservice.service.IndexService;
import com.yzpnb.common_utils.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping("/admin/acl/index")
@CrossOrigin
public class IndexController {
@Autowired
private IndexService indexService;
/**
* 根据token获取用户信息
*/
@GetMapping("info")
public Result info(){
//获取当前登录用户用户名
String username = SecurityContextHolder.getContext().getAuthentication().getName();
Map<String, Object> userInfo = indexService.getUserInfo(username);
return Result.ok().data(userInfo);
}
/**
* 获取菜单
* @return
*/
@GetMapping("menu")
public Result getMenu(){
//获取当前登录用户用户名
String username = SecurityContextHolder.getContext().getAuthentication().getName();
List<JSONObject> permissionList = indexService.getMenu(username);
return Result.ok().data("permissionList", permissionList);
}
@PostMapping("logout")
public Result logout(){
return Result.ok();
}
}