登录/退出/验证码

登录

接口地址

  • 接口地址:/login
  • 请求类型:POST

登录功能实现

需要继承com.wueasy.gateway.security.service.LoginService接口,并实现里面的login验证密码方法。

登录成功,创建一个session,并返回用户信息,权限信息

3.4版本以上

session对象新增拓展对象ExtendedObject

使用方式:

  • 在创建session的时候指定泛型Session<String> session = new Session<>();
  • 在方法getTypeReference()中,设置转换的类型,需要和创建session的泛型匹配
@Service
public class LoginServiceImpl implements LoginService{

    @Override
    public Session<?> login(HttpServletRequest request, HttpServletResponse response) {
        String loginNo = request.getParameter("loginNo");//用户名
        String password = request.getParameter("password");//密码


        if(StringHelper.isBlank(password)){
            throw new InvokeException(-2,"密码不能为空!");
        }

        if(!"wueasy".equals(loginNo) || !"123456".equals(password)) {
            throw new InvokeException(-3,"账号或密码不正确!");
        }


        //登录,创建一个session,并返回用户信息,权限信息
        Session<String> session = new Session<>();

        User user = new User();
        user.setIsSystem((short) 1);//是否超级管理员(1.是)
        user.setState((short) 1);//用户状态
        user.setUserId("1");
        user.setUsername("wueasy");
        session.setUser(user);

        //菜单权限
        List<Menu> menuList = new ArrayList<>(); 
        session.setMenuList(menuList);


        //可访问的url地址权限,用户有权限的url地址集合
        Set<String> linkUrlSetAll = new HashSet<String>();
        session.setUrlAuthList(linkUrlSetAll);


        //拓展信息对象
        session.setExtendedObject("1234");

        return session;
    }

    /**
     * 返回session泛型
     */
    @Override
    public TypeReference<?> getTypeReference() {
        //需要和登录返回的session对象一致
        return new TypeReference<Session<String>>() {};
    }
}

3.x版本

/**
 *
 * @author: fallsea
 * @version 1.0
 */
@Service
public class LoginServiceImpl implements LoginService{

    @Override
    public Session login(HttpServletRequest request, HttpServletResponse response) {
        String loginNo = request.getParameter("loginNo");//用户名
        String password = request.getParameter("password");//密码


        if(StringHelper.isBlank(password)){
            throw new InvokeException(-2,"密码不能为空!");
        }

        if(!"wueasy".equals(loginNo) || !"123456".equals(password)) {
            throw new InvokeException(-3,"账号或密码不正确!");
        }


        //登录成功,创建一个session,并返回用户信息,权限信息
        Session session = new Session();

        User user = new User();
        user.setIsSystem("1");//是否超级管理员(1.是)
        user.setState("1");//用户状态
        user.setUserId(1L);
        user.setUsername("wueasy");
        session.setUser(user);

        //菜单权限
        List<Menu> menuList = new ArrayList<>();

        //可访问的url地址权限,把用户权限url地址存入此处
        Set<String> linkUrlSetAll = new HashSet<String>();

        session.setMenuList(menuList);
        session.setUrlAuthList(linkUrlSetAll);
        return session;
    }
}

退出

退出会清空session信息

  • 接口地址:/logout

验证码

提供图形验证码接口

  • 接口地址:/captcha

配置验证码类型:PNG 静态验证码,GIF 动态验证码,默认PNG

wueasy:
  gateway:
    captcha:
      type: GIF
Copyright © wueasy.com 2017-2021 all right reserved,powered by Gitbook未经允许,禁止以任何形式传播 修订时间: 2021-04-18

results matching ""

    No results matching ""