若依前端框架登录执行过程

2023-11-16

一、登录页面
登录页面是Views文件夹下的login.vue文件
在这里插入图片描述
二、点击登录调用的方法为 handleLogin

handleLogin() {
      this.$refs.loginForm.validate(valid => {
        if (valid) {
          this.loading = true;
          if (this.loginForm.rememberMe) {
            Cookies.set("username", this.loginForm.username, { expires: 30 });
            Cookies.set("password", encrypt(this.loginForm.password), { expires: 30 });
            Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 });
          } else {
            Cookies.remove("username");
            Cookies.remove("password");
            Cookies.remove('rememberMe');
          }
          this.$store.dispatch("Login", this.loginForm).then(() => {
            this.$router.push({ path: this.redirect || "/" }).catch(()=>{});
          }).catch(() => {
            this.loading = false;
            if (this.captchaEnabled) {
              this.getCode();
            }
          });
        }
      });

通过this.$store.dispatch(“Login”, this.loginForm)调用封装在VueX中的Login方法。Login方法在文件夹store下的modules中的user.js中

// 登录
Login({ commit }, userInfo) {
  const username = userInfo.username.trim()
  const password = userInfo.password
  const code = userInfo.code
  const uuid = userInfo.uuid
  return new Promise((resolve, reject) => {
    login(username, password, code, uuid).then(res => {
      setToken(res.token)
      commit('SET_TOKEN', res.token)
      resolve()
    }).catch(error => {
      reject(error)
    })
  })
},

通过Login方法调用在/api/login下的login方法实现对登录接口的请求

import { login } from '@/api/login'

/api/login中login 方法

export function login(username, password, code, uuid) {
  const data = {
    username,
    password,
    code,
    uuid
  }
  return request({
    url: '/login',
    headers: {
      isToken: false
    },
    method: 'post',
    data: data
  })
}

如果请求通过setToken(res.token)方法将后端返回的token存储到本地中,完成用户的登录操作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

若依前端框架登录执行过程 的相关文章

  • 跨域XMLHttp请求

    这是我的情况 我有一台 Web 服务器机器 一台客户端机器和第三台运行一些侦听 XMLHttpRequest 的程序的机器 客户端从客户端计算机访问网络服务器 进行一些更改 然后单击 保存 此时 数据被发送回网络服务器和第三台机器 所有这些
  • 滚动时输入自动完成位置错误(chrome)

    我在输入文本的默认自动完成功能方面遇到了一些麻烦 滚动时它不会相应移动 我希望自动完成文本保留在输入的正下方 有办法做到这一点吗 我在 Chrome 浏览器版本 57 0 2987 133 中发生这种情况 fiddle https jsfi
  • 无法在 JavaScript for 循环中读取 null 的属性“长度”

    我正在尝试制作一个像 Stack Overflow 那样的 Markdown 编辑器 如果我实际上没有在文本区域中键入星号和包含短语的 http 我会收到标题中列出的此错误 如果我只输入包含星号的短语 则错误指的是这一行 if linkif
  • pubnub 和 head.js

    有没有人成功整合过pubnub http www pubnub com 和 head js 正确吗 Pubnub http www pubnub com 希望我将他们的脚本放在页面底部并带有 div 就在它前面的标签 这可以确保在最后调用
  • 如何设置vite.config.js基本公共路径?

    我正在尝试设置一个base url对于我的开发和生产环境 但是vitejs配置未解决 根据vitejs https vitejs dev config 您可以在配置选项中设置在开发或生产中提供服务时的基本公共路径 当从命令行运行 vite
  • 如何导入和导出 javascript ES6 类

    我是 javascript 和 nodejs 的新手 我正在使用这个项目来发展我的技能并学习新技术 目前我的项目使用多个相互依赖的类 类文件位于不同的目录中 我当前正在尝试使用 export 和 require 语句来允许在其他文件中引用类
  • Web 组件 - 服务/非 html 组件

    所以我来自 Angular 想看看如何创建vanilla Web components 现在 从 Angular 开始 我们倾向于将事物分开 组件 充当 HTML CSS 和一些 javascript 然后是 服务 主要负责收集数据和执行不
  • 为什么 length 是 `Array` 的属性而不是 `Array.prototype` 链

    所以我在 V8 控制台上玩了很多 我做到了 Object getOwnPropertyNames 我期望得到 结果 然而 length 所以这意味着不是成为原型链的一部分 length是所有人的成员财产Array对象 这是一个错误 还是有任
  • 搜索深度嵌套数组以更新对象

    我有一个深层嵌套的数据结构 我有兴趣匹配数组 和数组数组 中的某个值 然后将一些数据推送到随附的数组中 例如以下是我的数组colors并伴随着的是更多颜色数组可能存在也可能不存在 var myData color green moreCol
  • 通过JS Laravel访问存储目录

    有没有办法访问storage目录 该目录已经链接到publicJS 中的目录 我正在尝试制作一个上传图片的表单 验证脚本 if request gt hasFile photos marker gt photos request gt ph
  • 在 jQuery 可排序中对多个选定项目进行排序?

    我试图在 jQuery 可排序集中选择多个项目 然后将选定的项目一起移动 这是我的弱点开始尝试使其发挥作用 http jsfiddle net benstenson CgD8Y 这是代码 HTML div class container d
  • JavaScript 测验在提出所有问题之前结束

    我现在正在学习 JavaScript 并且正在创建一个测验 我的测验运行正常 控制台中没有任何错误 但它会跳过问题 有时会在回答所有问题之前结束测验 即使给出正确答案 也会减少时间 我不太确定为什么它会这样做 因为在我看来它的编码是正确的
  • 为什么 Web Worker 性能在 30 秒后急剧下降?

    我正在尝试提高在网络工作人员中执行时脚本的性能 它旨在解析浏览器中的大型文本文件而不会崩溃 一切都运行得很好 但我注意到使用网络工作者时大文件的性能存在严重差异 于是我做了一个简单的实验 我在同一输入上运行脚本两次 第一次运行在页面的主线程
  • 使用日期字符串数组在引导日期选择器中设置禁用月份不起作用

    我有一个日期选择器 其配置如下 HTML div class input group date div
  • 从 DirectionsRenderer 中获取折线或标记的事件

    我正在使用 DirectionsService 和路线方法来生成 DirectionsResult 我还使用 DirectionsRenderer 对象来显示结果 因为它非常易于使用 我在检测 Directions changed 事件时没
  • Knockout.js 安全绑定

    我想使用带有淘汰赛的安全绑定 为此我使用敲除安全绑定 js https github com brianmhunt knockout secure binding 谁能解释一下为什么下面的代码不起作用 它会抛出一个错误 未捕获 淘汰 安全
  • mozilla pdf.js 没有全视图

    我喜欢这个 pdf 查看器https github com mozilla pdf js https github com mozilla pdf js Demo http mozilla github com pdf js web vie
  • JavaScript:测试与执行

    我想知道检查字符串 例如邮件 密码等 的最佳方法是什么 i exec a vs i test a exec返回值 test true test 1 way var mail req body mail if check mail exec
  • 在 HTML5 iOS 7 / iOS 8 中显示十进制键盘

    经过几个小时的搜索后 我只是有一个简单的问题 是否有可能在网络浏览器输入字段中显示小数键盘 input type number 只显示数字 但我需要在左下角使用逗号或点 我尝试过任何事情 pattern step等等 但没有显示十进制键盘
  • Internet Explorer 9 是否会因数组和对象文字末尾的额外逗号而卡住?

    现代浏览器和 Node js 等环境允许您说 a 1 b 2 或 1 2 3 这在历史上一直是 Internet Explorer 的问题 Internet Explorer 9 中修复了此问题吗 对此有两种不同的答案 一种是对象初始值设定

随机推荐

  • ES6的理解

    1 ES6是什么 用来做什么 ES6 全称 ECMAScript 6 0 是 JavaScript 的下一个版本标准 2015 06 发版 它的目标 是使得 JavaScript 语言可以用来编写复杂的大型应用程序 成为企业级开发语言 ES
  • 企业微信开发第三方应用开发视频教程,ToB Dev李月喜全网首发

    csdn程序员学院 企业微信三方应用开发 视频课程 全网企业微信三方应用开发教程首发 https edu csdn net course detail 30582 即将完结欢迎试看购买 下为目录 课程名称 企业微信开发之第三方应用开发篇 课
  • JUC 十. synchronized深入

    目录 一 基础复习 二 根据synchronized修饰不同成员了解synchronized实现原理 同步代码块 小总结 同步方法 小总结 synchronized 与 管程 底层分析 三 锁升级相关 复习一下对象头 无锁演示 偏向锁 演示
  • Spark、Strom、Flink和Beam的技术选型

    Spark streaming Storm Flink和Beam都是开源的分布式系统 具有低延迟 可扩展和容错性诸多优点 允许你在运行数据流代码时 将任务分配到一系列具有容错能力的计算机上并行运行 都提供了简单的API来简化底层实现的复杂程
  • c#中日志NLog配置问题

    Failed obtaining configuration for Common Logging from configuration section common logging 在配置中没有配置对 另外很有可能是NLog 的配置文件没
  • MM32F3273G8P火龙果开发板MindSDK开发教程15 - 获取msa311加速器的方向改变事件

    MM32F3273G8P火龙果开发板MindSDK开发教程15 获取msa311加速器的方向改变事件 1 功能描述 类似手机里横屏竖屏检测 当方向发生变化时 横屏竖屏自动切换 当msa311方向改变时 会产生中断 然后从寄存器Reg 0x0
  • 性能测试 —— Tomcat监控与调优:Jconsole监控

    JConsole的图形用户界面是一个符合Java管理扩展 JMX 规范的监测工具 JConsole使用Java虚拟机 Java VM 提供在Java平台上运行的应用程序的性能和资源消耗的信息 在Java平台 标准版 Java SE平台 6
  • 【转载】wireshark抓包教程详解

    Wireshark软件安装 软件下载路径 wireshark官网 按照系统版本选择下载 下载完成后 按照软件提示一路Next安装 说明 如果你是Win10系统 安装完成后 选择抓包但是不显示网卡 下载win10pcap兼容性安装包 下载路径
  • 存储的一些基本概念(HBA,LUN)

    time 2008 11 12auther skate 最近存储要升级 对存储的认识也更进一步了 下面是关于存储的一些相关的概念 存储的一些基本概念 HBA LUN 有些新手总是在各式各样的概念里绕来绕去 弄的不亦乐乎 所以我就把我的一些理
  • jmeter断言

    1 设置断言 右击线程组 断言 响应断言 2 设置响应断言 测试的模式输入的内容来自 察看结果树中的响应结果 3 察看结果树执行结果 4 断言结果
  • 《深入浅出OCR》前言知识(一):机器学习最新全面总结

    专栏介绍 经过几个月的精心筹备 本作者推出全新系列 深入浅出OCR 专栏 对标最全OCR教程 具体章节如导图所示 将分别从OCR技术发展 方向 概念 算法 论文 数据集等各种角度展开详细介绍 面向对象 本篇前言知识主要介绍机器学习 方便小白
  • Windows10 - 在当前文件夹下打开cmd(命令行)的方法

    1 清除文件路径输入cmd 2 按住shift 再点击鼠标右键 在某个版本前 这里右键还是打开命令行 后来换成了打开ps 有改注册表的方法 将其改回打开cmd
  • vue3 使用vant框架的van-list 上拉加载用法

  • STM32PWM知识详解

    目录 一 PWM简介 1 定义 2 主要参数 二 PWM产生方式 1 普通IO口与PWM口 2 普通IO口产生PWM 3 PWM口产生PWM 总结 参考链接归纳 一 PWM简介 1 定义 脉冲宽度调制 PWM 是一种数字信号 最常用于控制电
  • 【C++入门】虚继承的实现原理

    转载自 http blog csdn net xiejingfa article details 48028491 准备工作 1 VS2012使用命令行选项查看对象的内存布局 微软的Visual Studio提供给用户显示C 对象在内存中的
  • 计算两个数的平方和

    3 计算两个数的平方和 从键盘读入两个实数 编程计算并输出它们的平方和 要求使用数学函数pow x y 计算平方值 输出结果保留2位小数 程序中所有浮点数的数据类型均为float include
  • html右侧增加页面导航快捷键效果图及代码

    如果一个页面非常长时 在页面右侧增加导航快捷键还是比较有必要的 见效果图 局部放大后的效果 具体实现代码如下 html相关代码 div class gototop none div a href img src static imgs to
  • exit()函数

    进程的终止方式 有8种方式使进程终止 其中前5种为正常终止 它们是 1 从 main 返回 2 调用 exit 3 调用 exit 或 Exit 4 最后一个线程从其启动例程返回 5 最后一个线程调用pthread exit 异常终止有3种
  • Redis4.0从库复制报错"master_link_status:down"处理一例

    环境描述 Redis版本 4 0 2 主库 192 168 0 190 从库 192 168 0 191 今天Zabbix告警一直出现redis sync error的信息 于是登陆redis发现从库复制状态一直是master link s
  • 若依前端框架登录执行过程

    一 登录页面 登录页面是Views文件夹下的login vue文件 二 点击登录调用的方法为 handleLogin handleLogin this refs loginForm validate valid gt if valid th