当前位置: 首页 > wzjs >正文

文库网站建设2023年6月疫情恢复

文库网站建设,2023年6月疫情恢复,dw在线编辑器,wordpress应用在虚拟主机上一:登录页数据查询 登录服务端的核心逻辑就是:接收前端请求传递的用户名和密码 ,然后再根据用户名和密码查询用户信息,如果用户信息存在,则说明用户输入的用户名和密码正确。如果查询到的用户不存在,则说明用户输入的用户名和密码错误。 ps:本质是查询指定用户名和密码情…

一:登录页数据查询

登录服务端的核心逻辑就是:接收前端请求传递的用户名和密码 ,然后再根据用户名和密码查询用户信息,如果用户信息存在,则说明用户输入的用户名和密码正确。如果查询到的用户不存在,则说明用户输入的用户名和密码错误。

ps:本质是查询指定用户名和密码情况下是否纯在该用户:

SQL: select* from emp where username="---" and password=“---”;

**LoginController**~~~java
@RestController
public class LoginController {@Autowiredprivate EmpService empService;@PostMapping("/login")
//通常使用POST请求时,若使用JSON进行请求,则在服务端通过RequestBody注解,将传输的信息,使用实体类进行封装public Result login(@RequestBody Emp emp){Emp e = empService.login(emp);return  e != null ? Result.success():Result.error("用户名或密码错误");}
}

二:登录校验

在我们登录成功后就可以进入到后台管理系统中进行数据的操作。

但是当我们在浏览器中新的页面上输入地址:`http://localhost:9528/#/system/dept`,发现没有登录仍然可以进入到后端管理系统页面。

而真正的登录功能应该是:登陆后才能访问后端系统页面,不登陆则跳转登陆页面进行登陆。

为什么会出现这个问题?其实原因很简单,就是因为针对于我们当前所开发的部门管理、员工管理以及文件上传等相关接口来说,我们在服务器端并没有做任何的判断,没有去判断用户是否登录了。所以无论用户是否登录,都可以访问部门管理以及员工管理的相关数据。所以我们目前所开发的登录功能,它只是徒有其表。而我们要想解决这个问题,我们就需要完成一步非常重要的操作:登录校验。

什么是登录校验?

- 所谓登录校验,指的是我们在服务器端接收到浏览器发送过来的请求之后,首先我们要对请求进行校验。先要校验一下用户登录了没有,如果用户已经登录了,就直接执行对应的业务操作就可以了;如果用户没有登录,此时就不允许他执行相关的业务操作,直接给前端响应一个错误的结果,最终跳转到登录页面,要求他登录成功之后,再来访问对应的数据。

HTTP协议是无状态协议。什么又是无状态的协议?

所谓无状态,指的是每一次请求都是独立的,下一次请求并不会携带上一次请求的数据。而浏览器与服务器之间进行交互,基于HTTP协议也就意味着现在我们通过浏览器来访问了登陆这个接口,实现了登陆的操作,接下来我们在执行其他业务操作时,服务器也并不知道这个员工到底登陆了没有。因为HTTP协议是无状态的,两次请求之间是独立的,所以是无法判断这个员工到底登陆了没有。

那应该怎么来实现登录校验的操作呢?具体的实现思路可以分为两部分:

1. 在员工登录成功后,需要将用户登录成功的信息存起来,记录用户已经登录成功的标记。

2. 在浏览器发起请求时,需要在服务端进行统一拦截,拦截后进行登录校验。

> 想要判断员工是否已经登录,我们需要在员工登录成功之后,存储一个登录成功的标记,接下来在每一个接口方法执行之前,先做一个条件判断,判断一下这个员工到底登录了没有。如果是登录了,就可以执行正常的业务操作,如果没有登录,会直接给前端返回一个错误的信息,前端拿到这个错误信息之后会自动的跳转到登录页面。

>

> 我们程序中所开发的查询功能、删除功能、添加功能、修改功能,都需要使用以上套路进行登录校验。此时就会出现:相同代码逻辑,每个功能都需要编写,就会造成代码非常繁琐。

>

> 为了简化这块操作,我们可以使用一种技术:统一拦截技术。

>

> 通过统一拦截的技术,我们可以来拦截浏览器发送过来的所有的请求,拦截到这个请求之后,就可以通过请求来获取之前所存入的登录标记,在获取到登录标记且标记为登录成功,就说明员工已经登录了。如果已经登录,我们就直接放行(意思就是可以访问正常的业务接口了)。

(1)使用登录标记(操作繁琐)用户登录成功后,每一次请求,都可以获取到登陆标记

(2)使用统一拦截:

过滤器Filter

拦截器Interceptor

   (1)会话技术

会话跟踪技术有两种:

1. Cookie(客户端会话跟踪技术)

   - 数据存储在客户端浏览器当中

优点: HTTP 协议中支持的技术
缺点: 移动端APP 无法使用 Cookie;不安全,用户可以自己禁用Cookie;Cookie不能跨域

2. Session(服务端会话跟踪技术)

   - 数据存储在储在服务端

优点:存储在服务端,安全
缺点:
服务器集群环境下无法直接使用 Session
Cookie 的缺点

3. 令牌技术

优点:

支持 PC 端、移动端
  解决集群环境下的认证问题
 减轻服务器端存储压力
缺点:需要自己实现

(2)JWT令牌

全称: J SON  W eb  T oken JSON Web Tokens - jwt.io
定义了一种简洁的、自包含的格式,用于在通信双方以 json 数据格式安全的传输信息。由于数字签名的存在,这些信息是可靠的

场景 :登录认证。
登录成功后,生成令牌
后续每个请求,
http://www.dtcms.com/wzjs/158589.html

相关文章:

  • 官方网站建设意义seo岗位是什么意思
  • 织梦源码怎样做单页网站百度搜索排名服务
  • 企业网站开发一般多少钱佛山seo网站排名
  • 嘉兴网站备案微信seo是什么意思
  • 深圳哪个公司做网站好电脑优化大师哪个好
  • 单页网站建设平台营销策略都有哪些
  • 1元涨1000粉丝网站建站系统哪个好
  • 在哪里建设网站防疫管控优化措施
  • 电商关键词seo排名抖音优化
  • 网站菜单怎么做网上营销是干什么的
  • 德文网站建设网络营销有哪些功能
  • 东莞房价走势最新消息seo sem是什么意思
  • 单位网站建设注意事项厦门seo搜索引擎优化
  • 两学一做 山西答题网站地推拉新app推广怎么做
  • 便捷的大连网站建设营销型网站建设服务
  • 合江县住房建设规划局网站google推广怎么做
  • 北京网页设计公司网站手机网站建设案例
  • 萍乡网站优化北京seo实战培训班
  • 我想做个网站推广怎么做小说推文推广平台
  • 嘉兴做网站优化多少钱搭建网站基本步骤
  • 做目录网站注意事项站长工具使用方法
  • 网络推广网站怎么做一个完整的策划案范文
  • wordpress 游戏主题厦门网站快速排名优化
  • 装饰网站模版杭州seo公司哪家好
  • 网页界面设计中首页包括什么上海优化公司有哪些
  • 做商城网站建设牛排seo系统
  • 朋友叫我去柬埔寨做彩票网站推广网络营销技巧培训
  • 有专门做礼品的网站吗北京seo软件
  • 防水网站建设手机百度高级搜索入口
  • 深圳国际物流公司排名前十网站排名优化怎样做