学成在线总结

本文涉及的产品
云数据库 MongoDB,通用型 2核4GB
云原生内存数据库 Tair,内存型 2GB
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 学成在线总结

1、启动nginx,访问www.xuecheng.com

2、启动MongoDB:管理员身份进入cmd进入D:\Soft\MongoDB\bin

mongod --config “D:\Soft\MongoDB\mongo.conf” --install --serviceName “MongoDB”

启动:net start MongoDB

启动mongodb服务, 命令执行后,浏览器中输入http://127.0.0.1:27017看到如下界面即说明启动成功

MongoDB:root/123

打开studio3t

测试分页查询:http://localhost:31001/cms/page/list/1/10

Swagger接口测试:http://localhost:31001/swagger-ui.html

查询轮播图信息:http://localhost:31001/cms/config/getmodel/5a791725dd573c3574ee333f

测试轮播图模板:http://localhost:8088/freemarker/banner


3、启动rabbitmq:管理员身份进入D:\Soft\RabbitMQ Server\rabbitmq_server-3.7.7\sbin

安装管理插件:rabbitmq-plugins.bat enable rabbitmq_management

rabbitmq-service.bat start 启动服务

启动成功 登录RabbitMQ 进入浏览器,输入:http://localhost:15672

初始账号和密码:guest/guest


4、redis的启动

进入redis的安装目录,启动server,再启动client;

进入cmd命令行,进入D:\Soft\Redis目录。

redis-server redis.windows.conf


5、启动顺序:

申请令牌报服务器错误时需要启动以下项目:

eureka01

cms01

cmsclient

course

gateway

ucenterAuth

ucenter


登录顺序:

15-认证登录接口

16-写入Cookie

17-JWT查询

复制jwt中的内容放到Bearer后面—在xc_menu表中code字段值与findTeachplanList方法注解里的名字一致

22-通过课程编号查询课程列表–可以访问

23-查询课程列表–可以访问原因:

该方法上没有添加授权注解,spring security将不进行授权控制,只要jwt令牌合法则可以正常访问


复制jwt中的内容放到Bearer后面

jwt和redis中的jwt_token都可以


数据库密码:Followme@1234


XcServiceList:定义项目名称的常量类

SpringBoot中的日志需要引入spring-boot-starter-logging依赖,但是spring-boot-starter中已经默认包含了,所以不用再引入了。


https://www.cnblogs.com/anan-java/category/1645067.html


登录走loadUserByUsername方法


Spring-security是自动化校验


该访问路径不存在

{
“timestamp”: “2020-07-09T00:43:24.194+0000”,
“status”: 404,
“error”: “Not Found”,
“message”: “No message available”,
“path”: “/course/coursebase/get/4028858162bec7f30162bed26cd70001”
}

Netsh wlan show profile name=“408-5G” key=clear


此博客只是为了记忆相关知识点,大部分为网络上的文章,在此向各个文章的作者表示感谢!


mongdb启动:进入mongdb文件的bin目录启动mongdb.exe;

http://www.xuecheng.com/

http://www.xuecheng.com:31001/cms/page/list/1/3

http://localhost:31001/swagger-ui.html#!/cms45page45controller/findListUsingGET

复制项目后maven一下就可以了;


项目经验:

用户管理:使用用户名和密码进行登录


认证服务工程

1、pom中引入SpringCloud的security和oauth2依赖

2、user数据库中有6张表以“oauth_”开头的表,都是spring Security 自带的表


微服务接入认证,需要如下操作:

1、pom中添加oauth2依赖

2、在config包下创建ResourceServerConfig类

3、请求接口中要在http header中添加令牌

4、授权配置类ResourceServerConfig的configure方法中对请求路径进行放行


接口请求时携带JWT令牌时,就可以不用每次请求都要去请求认证服务工程,非常方便

JWT令牌由三部分组成,每部分中间使用点分隔,分别为:令牌类型Header,使用的哈希算法、负载Payload,设置过期时间戳和签名Signature,主要用于防止jwt内容被篡改,JWT令牌使用base64url进行编码


登录:

1、申请令牌

从eureka中获取认证服务的地址,设置header和body,利用restTemplate.exchange远程调用获取令牌信息:jti、refresh_token和access_token

2、令牌信息存储到redis中

将user_token:短令牌作为key,令牌信息作为value值存储到redis中并校验是否过期

3、短令牌存到Cookie

获取到短令牌jti并存储到cookie中,uid对应短令牌


退出

1、清楚cookie信息

从cookie中取出用户身份令牌uid

将cookie中maxAge设置为0

2、清楚redis信息

从redis中删除uid,token=user_token:uid,redis将token作为key,access_token作为value


查询用户信息接口:用户名

1、查询用户表

通过用户id查询用户表信息

2、查询用户权限表

通过用户id查询权限表信息

3、查询用户所属公司表

通过用户id查询用户所属公司表信息

然后拼装用户信息返回


使用Zuul网关里的ZuulFilter过滤器过滤头部是否包含Authorization,校验token的合法性,用户请求是否携带令牌

微服务之间使用feign进行远程调用,采用feign拦截器实现远程调用携带JWT


相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
1月前
|
SQL 应用服务中间件 程序员
|
1月前
|
SQL JavaScript 前端开发
开源!!!自习室在线选座系统!!!
开源!!!自习室在线选座系统!!!
|
9月前
|
移动开发 前端开发 HTML5
HTML+CSS-项目:学成在线
HTML+CSS-项目:学成在线
125 1
重拾梦想!语音交友源码平台搭建技术知识:在线KTV功能的实现
随着网络的快速发展,语音交友源码平台的新型功能将我们儿时的歌手梦托起,这个功能就是语音交友源码平台的在线KTV功能,对于开发语音交友平台的公司和个人来说,这个功能是非常重要的,下面我就详细为大家讲解语音交友源码平台搭建技术:在线KTV功能的实现!
重拾梦想!语音交友源码平台搭建技术知识:在线KTV功能的实现
|
SQL 开发框架 前端开发
推荐一个在线视频学习、在线试题练习、在线同步考试开源系统
一个基于.Net开发的在线学习、考试系统。兼容PC、移动、微信等多端设备,方便学员随时随地学习,并支持分销、分润等营销功能。
191 0
推荐一个在线视频学习、在线试题练习、在线同步考试开源系统
|
监控
《“啄”壮成长,移动app线上日志分析利器》电子版地址
“啄”壮成长,移动app线上日志分析利器
64 0
《“啄”壮成长,移动app线上日志分析利器》电子版地址
|
存储 缓存 数据库
春雷在线考试系统介绍
春雷在线考试系统是一套为各类学校和教育机构提供包括自测练习、组织统一考试、开展知识竞赛、安排课外作业、自动组卷评分和分数管理;为企事业单位的入职考试、员工考核、内部培训考试、晋升职级考核等提供在线练习、考试服务的系统。
春雷在线考试系统介绍
学成在线
跟着pink老师学的一个简单页面!!!
133 0
学成在线
|
1月前
|
数据可视化
大咖与小白的日常:那些炫酷的指挥中心大屏是怎么做的?
小白的老板想要电影里那样炫酷的指挥中心大屏来呈现业务数据,该怎么做呢?
|
测试技术 API Python
热饭的测开成果盘点第六期:在线编辑脚本平台
本期介绍的是一个django平台,它是我在18年的第一次大胆尝试在线维护脚本组装脚本。
热饭的测开成果盘点第六期:在线编辑脚本平台