返回

若依前后端分离版ruoyi-vue:小程序和APP获取token指南

前端

在 Ruoyi-Vue 中使用手机号和验证码登录

引言

随着数字时代的到来,小程序和 APP 已成为我们生活中不可或缺的一部分。为了增强用户体验,企业和组织纷纷采用 Ruoyi-Vue 后端分离框架构建应用程序。本文将深入探讨如何在 Ruoyi-Vue 中添加新的手机号和验证码登录接口,帮助小程序和 APP 获取令牌并利用 Ruoyi 的认证机制。

步骤

1. 添加用户表实体类

首先,我们创建一个新的用户表实体类,并为其定义 getter 和 setter 方法。这些方法对于从 Redis 中检索完整用户信息至关重要。

public class User {

    private String id;
    private String username;
    private String password;
    private String phone;
    private String email;

    // Getter 和 Setter 方法

}

2. 修改 SecurityConfig 类

接下来,我们修改 SecurityConfig 类,添加一个基于手机号和验证码的新登录接口。我们还需根据实际情况填写腾讯云短信验证码配置信息。

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
            .authorizeRequests()
            .antMatchers("/api/login/phone").permitAll()
            .anyRequest().authenticated()
            .and()
            .formLogin()
            .loginPage("/login.html")
            .loginProcessingUrl("/api/login")
            .permitAll()
            .and()
            .logout()
            .logoutUrl("/logout")
            .logoutSuccessUrl("/login.html")
            .permitAll();
}

3. 修改 LoginController 类

最后,我们修改 LoginController 类,添加一个新方法来处理手机号和验证码登录请求。该方法使用腾讯云短信验证码服务验证手机号和验证码。

@PostMapping("/phone")
public R loginPhone(String phone, String code) {
    if (StrUtil.isEmpty(phone) || StrUtil.isEmpty(code)) {
        return R.error("手机号或验证码不能为空");
    }
    boolean verifyResult = verifyCode(phone, code);
    if (!verifyResult) {
        return R.error("验证码错误");
    }
    UserInfo user = getUserInfo(phone);
    if (user == null) {
        user = register(phone);
    }
    String token = createToken(user);
    return R.ok("登录成功", token);
}

手机号和验证码登录的优势

  • 便捷快速: 只需输入手机号和验证码即可登录,无需记忆密码。
  • 安全可靠: 验证码机制防止了未经授权的访问,即使他人知道手机号也无法登录。
  • 通用性强: 适用于各种设备和平台,包括手机、平板电脑和电脑。

应用场景

  • 电商平台:快速下单购物
  • 社交平台:即时与好友互动
  • 游戏平台:便捷进入游戏体验

使用说明

  1. 输入手机号获取验证码。
  2. 输入验证码完成登录。
  3. 若手机号不存在,系统将自动注册。

常见问题解答

1. 为什么使用手机号和验证码登录?
便捷快速、安全可靠、通用性强。

2. 如何获取验证码?
在登录页面输入手机号后,点击“获取验证码”按钮。

3. 忘记了验证码怎么办?
点击“获取验证码”按钮重新获取。

4. 手机号不存在怎么办?
系统将自动注册。

5. 输入错误的验证码多次怎么办?
账号可能会被临时锁定。

结论

通过在 Ruoyi-Vue 中添加新的手机号和验证码登录接口,小程序和 APP 可以轻松获取令牌,享受更便捷、安全的验证体验。这将极大地提升用户体验,增强应用的安全性。