JsonAuthSuccessHandler.java 文件源码

java
阅读 36 收藏 0 点赞 0 评论 0

项目:eds-starter6-mongodb 作者:
@Override
public void onAuthenticationSuccess(HttpServletRequest request,
        HttpServletResponse response, Authentication authentication)
        throws IOException, ServletException {

    Map<String, Object> result = new HashMap<>();
    result.put("success", true);

    MongoUserDetails userDetails = (MongoUserDetails) authentication.getPrincipal();
    if (userDetails != null) {
        User user;
        if (!userDetails.isPreAuth()) {

            user = this.mongoDb.getCollection(User.class).findOneAndUpdate(
                    Filters.eq(CUser.id, userDetails.getUserDbId()),
                    Updates.set(CUser.lastAccess, new Date()),
                    new FindOneAndUpdateOptions()
                            .returnDocument(ReturnDocument.AFTER));
        }
        else {
            user = this.mongoDb.getCollection(User.class)
                    .find(Filters.eq(CUser.id, userDetails.getUserDbId())).first();
        }
        result.put(SecurityService.AUTH_USER, new UserDetailDto(userDetails, user,
                CsrfController.getCsrfToken(request)));
    }
    response.setCharacterEncoding("UTF-8");
    response.getWriter().print(this.objectMapper.writeValueAsString(result));
    response.getWriter().flush();
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号