更新token

This commit is contained in:
小海
2020-04-16 23:26:41 +08:00
parent 09cb012b14
commit e04238f0c9
2 changed files with 18 additions and 0 deletions

View File

@@ -10,6 +10,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@@ -63,6 +64,11 @@ public class AuthenticationFilter implements HandlerInterceptor {
return writeResponse(ResponseEnum.LOGIN_EXPIRED, response, request); return writeResponse(ResponseEnum.LOGIN_EXPIRED, response, request);
} }
String role = userService.getUserRoleByEmail(email); String role = userService.getUserRoleByEmail(email);
if (role.equals(ROLE_USER) || role.equals(ROLE_ADMIN)) {
// 更新token
String token = jwtUtil.updateTokenDate(jwtStr);
response.setHeader("Authorization",token);
}
if (role.equals(ROLE_ADMIN)) { if (role.equals(ROLE_ADMIN)) {
// admin // admin
return true; return true;

View File

@@ -61,4 +61,16 @@ public class AuthorizationFilter extends BaseTest {
assertEquals(HAVE_NOT_LOG_IN.getCode(), object.getInt(Code)); assertEquals(HAVE_NOT_LOG_IN.getCode(), object.getInt(Code));
}); });
} }
@Test
public void authorizationTest() throws Exception {
// 测试response中有无Authorization字段
String s = userLogin();
mockMvc.perform(get("/user/userInfo").header("Authorization", s)).andDo(result -> {
JSONObject object = JSONObject.fromObject(result.getResponse().getContentAsString());
assertEquals(SUCCESS.getCode(), object.getInt(Code));
assertNotNull(result.getResponse().getHeader("Authorization"));
assertNotEquals(s, result.getResponse().getHeader("Authorization"));
});
}
} }