Commit f594aecb authored by 杨伊博's avatar 杨伊博

modify login

parent b7692548
package com.us.example.controller; package com.us.example.controller;
import com.us.example.domain.SysUser; import com.us.example.dao.UserDao;
import org.springframework.security.core.annotation.AuthenticationPrincipal; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.context.SecurityContext;
import org.springframework.security.core.userdetails.User;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
/** /**
* Created by yangyibo on 17/3/1. * Created by yangyibo on 17/3/1.
*/ */
@RestController @RestController
public class LoginController { public class LoginController {
@Autowired
UserDao userDao;
@RequestMapping(value = "/login") @RequestMapping(value = "/login")
@ResponseBody @ResponseBody
//用户名密码是用base64 加密 原文为 admin:admin 即 用户名:密码 内容是放在request.getHeader 的 "authorization" 中 //用户名密码是用base64 加密 原文为 admin:admin 即 用户名:密码 内容是放在request.getHeader 的 "authorization" 中
public Object login(@AuthenticationPrincipal SysUser loginedUser, @RequestParam(name = "logout", required = false) String logout) { public Object login(HttpServletRequest request, @RequestParam(name = "logout", required = false) String logout) {
if (logout != null) { if (logout != null) {
return null; return null;
} }
if (loginedUser != null) { SecurityContext sc = (SecurityContext) request.getSession().getAttribute("SPRING_SECURITY_CONTEXT");
return loginedUser; User user = (User) sc.getAuthentication().getPrincipal();
} return userDao.findByUserName(user.getUsername());
return null;
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment