项目登录功能

商城项目登录功能实现(动图) 导语 去年上传了重构小米官网商城的首页,但是没有登录注册功能。不论是js原生方法实现,还是jq和vue等框架实现,个人认为是大同小异,思路是一样的。 在使用vue构建数字商城的项目中使用vue也实现了登录功能,点击登录跳转到登录页面是使用vue-router实现的,登录页面事使用html、css实现,登录验证功能使用表单、v-model和正则表达式实现。 先看实现的功能如下: 演示的有些快,可能... 阅读详情

Vue-Cli配置跨域代理

目标: 通过配置vue-cli的代理解决跨域访问的问题

为什么会出现跨域?

当下,最流行的就是前后分离项目,也就是前端项目和后端接口并不在一个域名之下,那么前端项目访问后端接口必然存在跨域的行为.

请注意,我们所遇的这种跨域是位于开发环境的,真正部署上线时的跨域是生产环境的

解决开发环境的跨域问题

开发环境的跨域

开发环境的跨域,也就是在vue-cli脚手架环境下开发启动服务时,我们访问接口所遇到的跨域问题,vue-cli为我们在本地开启了一个服务,可以通过这个服务帮我们代理请求,解决跨域问题

这就是vue-cli配置webpack的反向代理

采用vue-cli的代理配置

vue-cli的配置文件即vue.config.js,这里有我们需要的 代理选项

module.exports = {
  devServer: {
   // 代理配置
    proxy: {
        // 这里的api 表示如果我们的请求地址有/api的时候,就出触发代理机制
        // localhost:8888/api/abc  => 代理给另一个服务器
        // 本地的前端  =》 本地的后端  =》 代理我们向另一个服务器发请求 (行得通)
        // 本地的前端  =》 另外一个服务器发请求 (跨域 行不通)
        '/api': {
        target: 'www.baidu.com', // 我们要代理的地址
        changeOrigin: true, // 是否跨域 需要设置此值为true 才可以让本地服务代理我们发出请求
         // 路径重写
        pathRewrite: {
            // 重新路由  localhost:8888/api/login  => www.baidu.com/api/login
            '^/api': '' // 假设我们想把 localhost:8888/api/login 变成www.baidu.com/login 就需要这么做 
        }
      },
    }
  }
}

接下来,我们在代码中将要代理的后端地址变成 后端接口地址

// 代理跨域的配置
    proxy: {
      // 当我们的本地的请求 有/api的时候,就会代理我们的请求地址向另外一个服务器发出请求
      '/api': {
        target: 'http://ihrm-java.itheima.net/', // 跨域请求的地址
        changeOrigin: true // 只有这个值为true的情况下 才表示开启跨域
      }
    }

封装单独的登录接口

目标 在单独请求模块中,单独封装登录接口

完成登录模块之后,我们需要对登录接口进行封装

首先,查阅接口文档中的登录接口

基础模板已经有了原来的登录代码,我们只需要进行简单的改造即可

主页的token拦截处理

目标:根据token处理主页的访问权限问题

权限拦截的流程图

我们已经完成了登录的过程,并且存储了token,但是此时主页并没有因为token的有无而被控制访问权限

export function login(data) {
  // 返回一个axios对象 => promise  // 返回了一个promise对象
  return request({
    url: '/sys/login', // 因为所有的接口都要跨域 表示所有的接口要带 /api
    method: 'post',
    data
  })
}

在基础框架阶段,我们已经知道src/permission.js是专门处理路由权限的,所以我们在这里处理

流程图转化代码

// 权限拦截 导航守卫 路由守卫  router
import router from '@/router' // 引入路由实例
import store from '@/store' // 引入vuex store实例
import NProgress from 'nprogress' // 引入一份进度条插件
import 'nprogress/nprogress.css' // 引入进度条样式

const whiteList = ['/login', '/404'] // 定义白名单  所有不受权限控制的页面
// 路由的前置守卫
router.beforeEach(function(to, from, next) {
  NProgress.start() // 开启进度条
  //  首先判断有无token
  if (store.getters.token) {
    //   如果有token 继续判断是不是去登录页
    if (to.path === '/login') {
      //  表示去的是登录页
      next('/') // 跳到主页
    } else {
      next() // 直接放行
    }
  } else {
    // 如果没有token
    if (whiteList.indexOf(to.path) > -1) {
      // 如果找到了 表示在在名单里面
      next()
    } else {
      next('/login') // 跳到登录页
    }
  }
  NProgress.done() // 手动强制关闭一次  为了解决 手动切换地址时  进度条的不关闭的问题
})
// 后置守卫
router.afterEach(function() {
  NProgress.done() // 关闭进度条
})

springboot+JPA实现登录功能项目解析 2.开发步骤 (1)项目的主体框架如下 主体大致分为三个层 ;Dao层;Service层;Controller层(web文件夹); Aspect:放置框架日志 Handler:放置自定义异常机制,例如当我们的网站运行异常的时候如何处理这些异常 Po:放置的为json数据的实体类 Util:放置的是工具类 以下为主体三个层的解释: 1.Dao层:全称Data Access Object。Dao层比较底层,负责与数据库打交道具体到对某个表、某个实体的增删改查 2.Service层:又叫服务层或业务层,封装Da 阅读详情

相关推荐

iHRM人力资源管理系统-API文档-w.pdf

项目地址可直接访问

SpringBoot项目登录与主页面(从建项目开始详细教程)

1.配置有mp代码生成器的依赖。2.配置有swagger文件。前端需要的静态配置文件。controller层。

每日一记,每周一结。 4486

【AI Agent 实战】OpenClaw 全面解析 + 全平台一键部署教程(本地 AI 智能体)

本文收录于 AI 智能体 & 自动化实战系列,手把手带你从零部署本地可控的 AI 执行助手关键词:OpenClaw、AI Agent、本地 AI 部署、自动化助手、Docker 部署

爱人爱己,风生水起 7908

Python一:接口基本请求

# coding=utf-8 import requests import json add_url="http://testadminapi.ihlaifu.cn/api/Tag/AddOrUpdateTag" get_url = "http://testadminapi.ihlaifu.cn/api/Tag/GetTag" delete_url = "http://testadminapi.ihlaifu.cn/api/Tag/DeleteTag" add_data=json.dumps({"tagI.

cxxc980322的博客 3259

spdk + fio测试nvme 设备的性能

fio的测试对象可以是块设备、文件等,在spdk的使用过程中会unbind默认的nvme driver,所以在系统中是看不到nvme块设备的,在spdk中可以通过fio_plugin的方式,将spdk的用户态driver部分的io功能打包成一个ioengine提供给fio使用,可以综合spdk的高性能和fio提供的复杂场景。更多DPDK相关学习资料有需要的可以自行报名学习,免费订阅,永久学习,或点击这里加。这个jobfile是spdk中提供的例子。领取,关注我持续更新哦!2.7 jobfile的例子。

lingshengxiyou的博客 1089

华硕三频万兆分布式路由组网实战:从AiMesh 2.0到全屋Wi-Fi 6覆盖

Mesh组网是解决大户型Wi-Fi覆盖难题的主流方案,其核心原理是通过多个节点构建网状网络,实现设备间的无缝漫游。在技术层面,Wi-Fi 6标准、三频设计(包括专属回程频段)和有线回程等技术,共同提升了网络的带宽、稳定性和抗干扰能力。这些技术的工程价值在于,能够为多设备并发、高带宽应用(如4K/8K流媒体、在线游戏、内网文件高速传输)提供可靠支撑。具体到应用场景,例如利用华硕AiMesh 2.0系统,配合三频万兆分布式路由器,可以实现智能的设备连接与负载均衡。通过合理规划节点位置、优先采用有线回程,并进行Q

weixin_34054866的博客 431

项目的登录功能

目录 1.登录业务流程 ①在登录页面输入用户名和密码 ②调用后台接口进行验证 ③通过验证之后,根据后台的响应状态跳转到项目主页 2.登录业务的相关技术点 http是无状态的 如果前端和后端接口不存在跨域问题:通过cookie在客户端记录状态,通过session在服务器端记录状态 如果存在跨域问题:通过token方式维持状态 登录-token原理分析 3.登录页面的布局 通过Element-UI组件实现布局 el-form 表单组件 el-form-item ...

我的博客 932

全网最详细Seurat v5 流程复现(拿来即用)

本文是基于seurat v5版本的教程复现,主要依据来源于官网seurat v5建议大家有时间的话可以去官网进行详细阅读学习!本节内容在之前seurat v4的教程都很多都有提到,文章所用到的数据及代码已经给各位放在这里了,有需要自取!请点击这里哦提取码:bui1。

ZxVSaccount的博客 1万+

使用springboot完成项目的登录功能

spring boot的理解 Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。简单来说就是Spring Boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架。 项目的创建 选择spring intializr,选择java8,创建项目,导入依赖。 登录功能的实现 在导入项目需要的界面html文件之后

lionheart0051的博客 955

UWB灵犀遥控器方案介绍

UWB灵犀指向遥控器的技术原理和方案介绍

xiongdauwb的博客 3899

MIPI RFFE 信号完整性与硬件设计

MIPI RFFE信号完整性设计关键点 摘要:MIPI RFFE作为射频前端控制总线,其信号完整性设计需平衡速率、驱动能力与抗干扰性。核心挑战在于确保接收端在52Mb/s速率下保持足够的电压和时序裕量。关键设计考量包括: 驱动能力优化:过强导致过冲/振铃和射频杂散,过弱则恶化时序裕量,需与总线负载匹配。 波形质量指标:严格控制上升/下降时间(兼顾EMC和时序要求),抑制过冲/振铃幅度,管理VIO电源纹波和耦合噪声。

sinat_15150363的博客 239

简单的注册登录功能(JavaWeb项目)介绍

简单的注册登录功能(JavaWeb项目)介绍 去发现同类优质开源项目:https://gitcode.com/ 本项目为一个基于JavaWeb的简单注册登录功能示例。它采用MVC编程模式,通过MySQL数据库实现用户信息的存储和管理。 功能特点 注册功能:用户通过填写详细的表单信息进行注册,表单中包含了必要的填写限制,确保信息的正确性和完整性。 登录功能:已注册用户可以通过输入用户名和密码进行登...

gitblog_06734的博客 531

3、无限维系统理论中的算子与半群:概念、定理及应用

本博文深入探讨了无限维系统理论中的两个核心概念:里茨谱算子与卢默-菲利普斯定理。文章首先介绍了里茨基的定义与性质,分析了谱、预解集及特征值在无限维系统中的特性,并详细阐述了里茨谱算子的条件及其生成C0-半群的能力,结合阻尼欧拉-伯努利梁模型展示了其应用。随后,文章介绍了卢默-菲利普斯定理及其推论,通过多个偏微分方程实例(如一阶方程、柔性梁、波动方程和扩散问题)说明如何利用该定理判断算子是否生成压缩半群。此外,还强调了状态空间选择和边界条件对系统适定性的重要影响,并总结了相关问题的解决步骤与方法。

flink9streamer的博客 148

FUXA项目用户登录功能配置指南

FUXA项目用户登录功能配置指南 问题现象与解决方案 在使用FUXA项目时,部分用户反馈启用了登录功能后,系统没有显示预期的登录页面,而是直接以管理员身份进入系统。经过分析,这是由于未正确配置"Authentication Token"选项导致的。 详细配置步骤 启用用户认证:首先需要在系统设置中开启用户认证功能,这是基础配置。 关键配置项:必须同时启用"Au...

gitblog_07815的博客 568

分数间隔均衡器的基本原理及应用(使用Matlab)

通过对接收信号进行加权求和,分数间隔均衡器可以抵消信号在传输过程中受到的频率响应失真。Matlab提供了丰富的工具和函数,可以方便地实现分数间隔均衡器,并进行性能评估。分数间隔均衡器(Fractional Interval Equalizer)是一种数字信号处理技术,用于均衡带通信道中的信号失真。分数间隔均衡器的基本原理是通过对接收信号进行加权求和,以抵消信号在传输过程中受到的频率响应失真。分数间隔均衡器在通信系统中具有广泛的应用。最后,我们通过比较均衡后的信号和发送数据的阈值来进行解调,并计算误码率。

2301_79325657的博客 680

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

黑马点评项目-短信登录功能

黑马点评项目-短信登录功能 【下载地址】黑马点评项目-短信登录功能分享 本资源文件提供了黑马点评项目的短信登录功能实现代码及相关配置文件。通过本项目,您可以学习如何使用Redis、Nginx等技术实现一个完整的短信登录功能,包括发送验证码、验证码登录、用户注册等流程 ...

gitblog_06591的博客 467

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

完成一个IDEA web项目(二)登录功能实现

(二)登录功能实现 1. 编写前端页面 若jsp页面中文乱码:在jsp中指定页面显示的编码为GBK 添加page命令 <%@ page language="java" contentType="text/html; charset=GBK" %> 参考:https://www.cnblogs.com/beijiguangyong/archive/2012/03/31/24...

u012161251的博客 1万+

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Maven web 项目 简单的登录功能实现

用IDEA构建一个空的Maven web项目 下一步 直到创建完毕 搭建环境 pom.xm 文件添加依赖 pom.xml 文件如下: &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001...

qq_39404625的博客 8202

java搭建项目环境+实现登录功能

搭建项目环境 1、file -> new Project -> 取名(webProject) 2、右击webProject -> Add Framework Support ->选中Web Appliacation ->OK (此时会多出一个web包 3、点开WEB-INF -> 点开web.xml (此处可进行一些配置设置),此时不用配置 4、点击工具栏靠右上角的 Add Condiguration ->点击左上角的“+”号 -> 找到 Tomcat Ser

weixin_43515797的博客 765

SpringBoot项目实战杂货铺登录功能(二)

还在为毕业设计犯愁?这里有现成的系统开源免费提供给你。 今天带来的是整个系统中的登录功能。(至于前端,emm…等后端写完了再把前端改好看点吧????) 系统相应的架构以及技术栈组成在SpringBoot项目实战——杂货铺(源码已开源上传GitHub,会持续更新)一文中提及。 数据库用户表 这里知识为了实现登录功能而设计的具有基本信息的表格,后面在这张表中肯定会关联存在一个头像文件的字段等等一切有实际应用场景的字段 随着后续需求慢慢加嘛,毕竟这些基础功能设计完还要考虑一些类似于防攻击之类的保证数据库健康之类的

肝铁侠的博客 2798

项目:jSon和Ajax登录功能

组件化网页开发 / 步骤二 · 项目:jSon和Ajax登录功能 要熟练编写封装的$.ajax({........}) 转载于:https://www.cnblogs.com/Knowledge-is-infinite/p/11158159.html

weixin_30409849的博客 643

【Android笔记】Android studio开发flutter项目进阶之实现用户登录功能

Windows系统下用Android studio开发flutter项目实现用户登录功能详解。

a6669666的博客 1398

网上书城项目的注册、登录功能及按照权限登录功能(项目进度二)

转载请标明出处:https://blog.csdn.net/men_ma/article/details/106847165. 本文出自 不怕报错 就怕不报错的小猿猿 的博客 网上书城项目的注册、登录功能及按照权限登录功能前言二级目录三级目录 前言 博主前面的博客中有关于网上书城这个项目的博客,今天我们接着上一篇的网上书城前端页面编写框架那篇博客继续,链接:网上书城项目的需求分析、数据库表设计及前端界面的编写. 现在我们来写登录注册功能,这是一个网站的开始,必不可少的部分,今天的登录功能要判断.

men_ma的博客 1645

vue项目中的登录功能实现

今天找了个开源的vue项目,要在此基础上改动,刚看到登录功能,封装的挺好,记录下,顺便捋捋思路,方便以后使用 1、界面部分,就正常的登录界面,把重点的代码贴上(红色箭头是登录事件) 2、js部分:输入用户名和密码,点击登录按钮后,触发this.throttleLogin方法,在此设置了一个节流函数throttle,此函数参数主要为调用的函数方法以及规定时间内仅触发一次。 节流函数 3、调用了this.login方法,在此方法中,将api请求封装到单独的模块中,该vue页面引用...

zqzmt的博客 1801
上一篇: 项目登录模块
下一篇: 路由和页面
soephin
博客等级 码龄5年 2粉丝 30原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值