第二节:Vben Admin 登录逻辑梳理和对接后端准备

系列文章目录

上一节:第一节:Vben Admin介绍和初次运行


文章目录

  • 系列文章目录
  • 前言
  • 项目路径的概述
  • 一、登录逻辑梳理
    • loginApi接口
    • 查看Mock
  • 二、后端程序对接准备
    • 关闭Mock
  • 总结


前言

第一节,我们已经配置了前端环境,运行起来了我们的Vben Admin的项目。
本节内容,我们先熟悉下项目的目录和文件,然后开始准备对接后端程序


项目路径的概述

路由在 src/router
页面在 sr/views

一、登录逻辑梳理

首先我们前端运行的url是http://127.0.0.1:5173/#/login
通过路由/login,可以定位登录文件是views/sys/login/Login.vue
通过/login的路由
调用的链路:

Login.vue => LoginForm.vue => 登录按钮(handleLogin)=> userStore.login =>
loginApi

我们先分析loginApi

loginApi接口

loginApi就是前端向后端请求的接口
src/api/sys/user.ts
在这里插入图片描述
这个接口,需要的参数是LoginParams, 期望的返回是LoginResultModel 具体结构,可以在api/sys/model/userModel.ts 文件查询
在这里插入图片描述
分析到这里,我们已经基本了解了,登录接口的要求,后端只要满足loginAPI的传参和返回,应该就没有问题。

查看Mock

现在我们看下,在没有后端支持的情况下,Vben Admin是如何通过Mock模拟登录的。
在项目启动后,我们点击登录按钮,我们的前端控制台输出是这样婶儿的。
在这里插入图片描述
登录调用了 mock/sys/user.ts 文件里面的/basic-api/login
在这里插入图片描述
这里逻辑,是如果登录通过用户和密码查询到用户信息,就返回用户信息,如果未查询到就返回报错。同时成功是返回 resultSuccess 失败是返回 resultError 格式。
在文件mock/_utils.ts中可以看到

export function resultSuccess<T = Recordable>(result: T, { message = 'ok' } = {}) {return {code: ResultEnum.SUCCESS,result,message,type: 'success',};
}export function resultError(message = 'Request failed',{ code = ResultEnum.ERROR, result = null } = {},
) {return {code,result,message,type: 'error',};
}

二、后端程序对接准备

关闭Mock

.env.development文件里修改
这里 VITE_USE_MOCK 改成 false
VITE_GLOB_API_URL 改成 api
在这里插入图片描述

项目再次启动,再次登录,这次登录已经报错了
在这里插入图片描述
404,说明我们请求的http://127.0.0.1:5173/api/login url不存在,下一步,我们就要对接后端的/api/login 接口。

总结

本节前端登录逻辑梳理完成了,后端只要在/api/login 接口编写返回逻辑,前后段就可以打通了,具体详情我们下一节介绍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2809476.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

查看笔记本电池健康状态-windows11

在 Windows 11 中获取详细的电池报告 Windows 11 中内置的 Powerfg 命令行选项来生成电池报告。 在任务栏上选择“搜索”&#xff0c;键入“cmd”&#xff0c;长按&#xff08;或右键单击&#xff09;“命令提示符”&#xff0c;然后选择“以管理员身份运行” ->“是”。 …

【Flink精讲】Flink性能调优:CPU核数与并行度

常见问题 举个例子 提交任务命令&#xff1a; bin/flink run \ -t yarn-per-job \ -d \ -p 5 \ 指定并行度 -Dyarn.application.queuetest \ 指定 yarn 队列 -Djobmanager.memory.process.size2048mb \ JM2~4G 足够 -Dtaskmanager.memory.process.size4096mb \ 单个 TM2~8G 足…

自动驾驶---行业发展及就业环境杂谈

进入21世纪以来&#xff0c;自动驾驶行业有着飞速的发展&#xff0c;自动驾驶技术&#xff08;L2---L3&#xff09;也逐渐落地量产到寻常百姓家。虽然最早期量产FSD的特斯拉有着深厚的技术积累&#xff0c;但是进入2010年以后&#xff0c;国内的公司也逐渐发展起来自己的自动驾…

【Java程序员面试专栏 算法思维】二 高频面试算法题:二分查找

一轮的算法训练完成后,对相关的题目有了一个初步理解了,接下来进行专题训练,以下这些题目就是汇总的高频题目,本篇主要聊聊二分查找,包括基础二分,寻找目标值的左右边界,搜索旋转数组以及波峰,以及x的平方根问题,所以放到一篇Blog中集中练习 题目关键字解题思路时间空…

python常用文件操作

1.文件夹创建&#xff0c;删除&#xff0c;重命名&#xff0c;路径连接&#xff0c;文件打开&#xff0c;关闭读写 #文件夹创建 path ./test newpath "./new" #判断文件夹是否存在 ret os.path.exists(path) if ret:pass else:#创建文件夹os.mkdir(path)#文件夹重…

查看mysql数据库的版本

要查看MySQL数据库的版本&#xff0c;可以使用以下几种方法&#xff1a; 命令行&#xff08;已连接到MySQL服务器&#xff09;&#xff1a; 登录到MySQL服务器后&#xff0c;在MySQL提示符下执行&#xff1a; mysql> SELECT VERSION(); 或者&#xff0c;也可以执行 STATUS; …

[C++]C++中memcpy和memmove的区别总结

这篇文章主要介绍了C中memcpy和memmove的区别总结,这个问题经常出现在C的面试题目中,需要的朋友可以参考下 变态的命名 我们在写程序时&#xff0c;一般讲究见到变量的命名&#xff0c;就能让别人基本知道该变量的含义。memcpy内存拷贝&#xff0c;没有问题;memmove&#xff…

大数据开发项目--音乐排行榜

环境&#xff1a;windows10&#xff0c;centos7.9&#xff0c;hadoop3.2、hbase2.5.3和zookeeper3.8完全分布式&#xff1b; 环境搭建具体操作请参考以下文章&#xff1a; CentOS7 Hadoop3.X完全分布式环境搭建 Hadoop3.x完全分布式环境搭建Zookeeper和Hbase 1. 集成MapReduce…

【03】逆序数组

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 一、逆序函数是什么&#xff1f; 二、逆序函数原码 1.直接逆序 2.创建临时数组逆序 三、结言 &#x1f4a5;一、逆序函数是什么&#xff1f; 示例&#xff1a;输入1 4 …

springBoot整合Redis(一、Jedis操作Redis)

在springboot环境下连接redis的方法有很多&#xff0c;首先最简单的就是直接通过jedis类来连接&#xff0c;jedis类就相当于是redis的客户端表示。 但是因为现在比较常用的是&#xff1a;StringRedisTemplate和RedisTemplate&#xff0c;所以jedis只做简单的介绍。 一、Jedis…

强化学习(GPS)

GPS——Guided Policy Search引导策略搜索 基于模型的强化学习算法 GPS目前被作为基础算法广泛应用于各种强化学习任务中&#xff0c;其出发点在于纯粹的策略梯度方法在更新参数时不会用到环境模型因而属于一种无模型强化学习算法。由于没有利用任何环境的内在属性&#xff0…

在线网络代理转发NPClient

NPClient操作方式&#xff1a; 用浏览器打开网站http://101.35.247.87:9000/ 点击注册 输入注册的用户名和密码&#xff0c;就会进入如下界面&#xff1a; 点击登录 输入用户名和密码后进入如下界面&#xff1a; 点击下载代理客户端&#xff0c;下载时要稍微等一下&#xff0c…

【hashmap】【将排序之后的字符串作为哈希表的键】【获取 HashMap 中所有值的集合】Leetcode 49 字母异位词分组

【hashmap】【将排序之后的字符串作为哈希表的键】【获取 HashMap 中所有值的集合】Leetcode 49 字母异位词分组 解法1 将排序之后的字符串作为哈希表的键解法2 在解法一的基础上加入了getOrDefault ---------------&#x1f388;&#x1f388;题目链接&#x1f388;&#x1f3…

K—近邻算法实际应用案例

K—近邻算法实际应用案例 1. 案例1&#xff1a;鸢尾花种类预测1.1 数据集获取和属性介绍1.1.1 scikit-learn中的数据集介绍1.1.2 sklearn数据集返回值介绍 1.2 数据可视化介绍&#xff08;查看数据分布&#xff09;1.3 数据集的划分1.4 特征工程1.4.1 归一化1.4.2 标准化 1.5 鸢…

09 呼吸灯

呼吸灯简介 呼吸灯实际展示的效果就是一个 LED 灯的亮度由亮到暗&#xff0c;再由暗到亮的变化过程&#xff0c;并且该过程是循环往复的&#xff0c;像呼吸一样那么有节奏。 呼吸灯通常是采用 PWM(Pulse Width Modulation&#xff0c;即脉冲宽度调制) 的方式实现&#xff0c;在…

zabbix监控业务数据

前言 监控系统除了监控os和数据库性能相关的指标外&#xff0c;业务数据也是重点监控的对象。 一线驻场的运维同学应该深有体会&#xff0c;每天需要向甲方或者公司反馈现场的数据情况&#xff0c;正常情况下一天巡检两次&#xff0c;早上上班后和下午下班前各一次。监控项目…

Vue3 路由配置 + 路由跳转 + 路由传参(动态路由传参 + 普通路由传参)

Vue Router&#xff1a; Vue.js 的官方路由。它与 Vue.js 核心深度集成&#xff0c;让用 Vue.js 构建单页应用变得轻而易举。 效果 一、介绍 1、官方文档&#xff1a;https://router.vuejs.org/zh/introduction.html 介绍 | Vue RouterVue.js 的官方路由https://router.vuejs.…

MATLAB练习题:违背直觉的三门问题(非常有趣的一道题目)

​讲解视频&#xff1a;可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇&#xff08;数学建模清风主讲&#xff0c;适合零基础同学观看&#xff09;_哔哩哔哩_bilibili 三门问题&#xff08;Monty Hall problem&#xff09;又称蒙提…

nginx之状态页 日志分割 自定义图表 证书

5.1 网页的状态页 基于nginx 模块 ngx_http_stub_status_module 实现&#xff0c;在编译安装nginx的时候需要添加编译参数 --with-http_stub_status_module&#xff0c;否则配置完成之后监测会是提示语法错误注意: 状态页显示的是整个服务器的状态,而非虚拟主机的状态 server{…

Nvidia Jetson Orin NX配置环境

Nvidia Jetson Orin NX配置环境配置环境 一、安装jetson5.1.2二、安装jtop三、配置CUDA和cuDNN四、安装Pytorch 先导片&#xff1a;Jetson采用arm64架构 一、安装jetson5.1.2 安装好jetson自带cuda、cudnn和tensorRT 官方文档 更换源 sudo vi /etc/apt/sources.list.d/nvidia…