学成在线总结

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

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 应用服务中间件 程序员
|
4月前
|
运维
电子好书发您分享《应用智能运维实践(试读版)》
电子好书发您分享《应用智能运维实践(试读版)》
63 1
|
1月前
|
SQL JavaScript 前端开发
开源!!!自习室在线选座系统!!!
开源!!!自习室在线选座系统!!!
|
7月前
|
移动开发 前端开发 HTML5
HTML+CSS-项目:学成在线
HTML+CSS-项目:学成在线
108 1
|
8月前
|
安全 JavaScript 前端开发
足球直播网站轻松搭建,专业级赛事直播竞猜系统源码分享
足球直播网站在现代社会中越来越受欢迎,吸引着众多体育爱好者。如果您想要创业在体育直播领域,建立一个自己的足球直播网站可能是一个不错的选择。
重拾梦想!语音交友源码平台搭建技术知识:在线KTV功能的实现
随着网络的快速发展,语音交友源码平台的新型功能将我们儿时的歌手梦托起,这个功能就是语音交友源码平台的在线KTV功能,对于开发语音交友平台的公司和个人来说,这个功能是非常重要的,下面我就详细为大家讲解语音交友源码平台搭建技术:在线KTV功能的实现!
重拾梦想!语音交友源码平台搭建技术知识:在线KTV功能的实现
|
程序员
白嫖我珍藏已久的在线小工具【第四弹】
今天继续持续输出,那么这次给大家带来我的在线小工具第四弹,每天不是在收集小工具就是在收集小工具的路上。
117 0
白嫖我珍藏已久的在线小工具【第四弹】
《从此爱上开会 云投屏和视频会议系统提升会议体验和效率》电子版地址
从此爱上开会 云投屏和视频会议系统提升会议体验和效率
80 0
《从此爱上开会 云投屏和视频会议系统提升会议体验和效率》电子版地址
|
存储 JSON 程序员
白嫖我珍藏已久的在线小工具【第一弹】
今天我给大家介绍几款我平时常用的在线小工具网站,这次真的是满满的干货啊,喜欢的记得点击在看加收藏哦!
179 0
|
开发者
白嫖我珍藏已久的在线小工具【第三弹】
作为一个开发者,手里不拥有那么几个不错的在线小工具怎么能行呢?
174 0
白嫖我珍藏已久的在线小工具【第三弹】