diff --git a/README.md b/README.md
index 54b93d32..dd4cc3f7 100644
--- a/README.md
+++ b/README.md
@@ -337,7 +337,7 @@ Echo 是一套前后端不分离的开源社区系统,基于目前主流 Java
### 显示评论及相关信息
-> 评论部分前端的名称显示有些缺陷,有兴趣的小伙伴欢迎提 PR 解决~
+> 评论部分前端的名称显示有些缺陷,有兴趣的小伙伴欢迎提 PR 解决 ~
关于评论模块需要注意的就是评论表的设计,把握其中字段的含义,才能透彻了解这个功能的逻辑。
@@ -451,7 +451,7 @@ double score = Math.log10(Math.max(w, 1))
-并推荐我的开源教程类项目 [『 CS-Wiki 』](https://gitee.com/veal98/CS-Wiki),Gitee 推荐项目,目前已 0.9k star: 致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试(秋招/社招),更指引学习的方向。
+并推荐我的开源教程类项目 [『 CS-Wiki 』](https://gitee.com/veal98/CS-Wiki),Gitee 推荐项目,目前已累积 1.5k star: 致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试(秋招/社招),更指引学习的方向。
### 序章
@@ -465,12 +465,18 @@ double score = Math.log10(Math.max(w, 1))
- [Echo 在 Windows 环境下的部署](https://mp.weixin.qq.com/s/ZgYGqLB5_rfCXNrW9jqgtQ)
- [Echo 在 Linux 服务器上的部署](https://mp.weixin.qq.com/s/q9X5sJv7mtPaSApZB0PxPA)
-### 架构篇
+### 业务逻辑篇
+
+- [Echo 的注册功能是怎么做的](https://mp.weixin.qq.com/s/SC2FRPrVUbNw5ySHopOpHQ)
### 技术要点篇
+- 代更
+
### 常见面试题
+- 待更
+
## 📞 联系我
有什么问题也可以添加我的微信,记得备注来意:格式 (学校或公司 - 姓名或昵称 - 来意)
@@ -479,7 +485,7 @@ double score = Math.log10(Math.max(w, 1))
## 🙋 微信交流群
-下方扫码加入 Echo 微信交流群,实时跟进项目进度、分享您的想法、讨论您遇到的问题:
+下方扫码加入 Echo 微信交流群,实时跟进项目进度,第一时间获取教程更新,分享您的想法,还能帮您解决遇到的问题。如果二维码过期可以上方扫码加我微信回复 “Echo 交流群”,我拉你进群:
@@ -490,8 +496,10 @@ double score = Math.log10(Math.max(w, 1))
另外,若发现 Bug 或好的想法可以积极与我联系或提 PR / issue,采纳后您将出现在下方列表中。感谢以下小伙伴对本项目做出的贡献,排名按照时间先后:
- [freedom_dh](https://gitee.com/dh_free)
+- [paulisusu](https://gitee.com/paulisusu)
> 🔗 友情链接(若您想要出现在这里,可以上方扫描微信二维码联系我):
>
> - [CS-Wiki](https://gitee.com/veal98/CS-Wiki):致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试,更指引学习的方向
> - [Furion](https://gitee.com/dotnetchina/Furion):让 .NET 开发更简单,更通用,更流行
+> - [Free-Fs](https://gitee.com/dh_free/free-fs):Spring Boot 开源云文件管理系统,方便快捷的管理云存储的文件
diff --git a/docs/README.md b/docs/README.md
index 0fc377cb..d5959295 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -425,7 +425,7 @@ double score = Math.log10(Math.max(w, 1))
-并推荐我的开源教程类项目 [『 CS-Wiki 』](https://gitee.com/veal98/CS-Wiki),Gitee 推荐项目,目前已 0.9k star: 致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试(秋招/社招),更指引学习的方向。
+并推荐我的开源教程类项目 [『 CS-Wiki 』](https://gitee.com/veal98/CS-Wiki),Gitee 推荐项目,目前已累积 1.5k star: 致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试(秋招/社招),更指引学习的方向。
### 序章
@@ -439,12 +439,18 @@ double score = Math.log10(Math.max(w, 1))
- [Echo 在 Windows 环境下的部署](https://mp.weixin.qq.com/s/ZgYGqLB5_rfCXNrW9jqgtQ)
- [Echo 在 Linux 服务器上的部署](https://mp.weixin.qq.com/s/q9X5sJv7mtPaSApZB0PxPA)
-### 架构篇
+### 业务逻辑篇
+
+- [Echo 的注册功能是怎么做的](https://mp.weixin.qq.com/s/SC2FRPrVUbNw5ySHopOpHQ)
### 技术要点篇
+- 代更
+
### 常见面试题
+- 待更
+
## 📞 联系我
有什么问题也可以添加我的微信,记得备注来意:格式 (学校或公司 - 姓名或昵称 - 来意)
@@ -453,7 +459,7 @@ double score = Math.log10(Math.max(w, 1))
## 🙋 微信交流群
-下方扫码加入 Echo 微信交流群,实时跟进项目进度、分享您的想法、讨论您遇到的问题:
+下方扫码加入 Echo 微信交流群,实时跟进项目进度,第一时间获取教程更新,分享您的想法,还能帮您解决遇到的问题。如果二维码过期可以上方扫码加我微信回复 “Echo 交流群”,我拉你进群:
@@ -464,8 +470,10 @@ double score = Math.log10(Math.max(w, 1))
另外,若发现 Bug 或好的想法可以积极与我联系或提 PR / issue,采纳后您将出现在下方列表中。感谢以下小伙伴对本项目做出的贡献,排名按照时间先后:
- [freedom_dh](https://gitee.com/dh_free)
+- [paulisusu](https://gitee.com/paulisusu)
> 🔗 友情链接(若您想要出现在这里,可以上方扫描微信二维码联系我):
>
> - [CS-Wiki](https://gitee.com/veal98/CS-Wiki):致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试,更指引学习的方向
-> - [Furion](https://gitee.com/dotnetchina/Furion):让 .NET 开发更简单,更通用,更流行
\ No newline at end of file
+> - [Furion](https://gitee.com/dotnetchina/Furion):让 .NET 开发更简单,更通用,更流行
+> - [Free-Fs](https://gitee.com/dh_free/free-fs):Spring Boot 开源云文件管理系统,方便快捷的管理云存储的文件
\ No newline at end of file
diff --git a/src/main/java/com/greate/community/config/SecurityConfig.java b/src/main/java/com/greate/community/config/SecurityConfig.java
index 38686e8a..c17e83bf 100644
--- a/src/main/java/com/greate/community/config/SecurityConfig.java
+++ b/src/main/java/com/greate/community/config/SecurityConfig.java
@@ -68,6 +68,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter implements Comm
.antMatchers(
"/discuss/delete",
+ "/discuss/delete/",
"/data/**"
)
.hasAnyAuthority(
diff --git a/src/main/java/com/greate/community/controller/LoginController.java b/src/main/java/com/greate/community/controller/LoginController.java
index 46ca9f37..033400e3 100644
--- a/src/main/java/com/greate/community/controller/LoginController.java
+++ b/src/main/java/com/greate/community/controller/LoginController.java
@@ -94,7 +94,8 @@ public class LoginController implements CommunityConstant {
* http://localhost:8080/echo/activation/用户id/激活码
*/
@GetMapping("/activation/{userId}/{code}")
- public String activation(Model model, @PathVariable("userId") int userId, @PathVariable("code") String code) {
+ public String activation(Model model, @PathVariable("userId") int userId,
+ @PathVariable("code") String code) {
int result = userService.activation(userId, code);
if (result == ACTIVATION_SUCCESS) {
model.addAttribute("msg", "激活成功, 您的账号已经可以正常使用!");
@@ -115,18 +116,14 @@ public class LoginController implements CommunityConstant {
/**
* 生成验证码, 并存入 Redis
* @param response
- * @param session
*/
@GetMapping("/kaptcha")
- public void getKaptcha(HttpServletResponse response, HttpSession session) {
+ public void getKaptcha(HttpServletResponse response) {
// 生成验证码
String text = kaptchaProducer.createText(); // 生成随机字符
System.out.println("验证码:" + text);
BufferedImage image = kaptchaProducer.createImage(text); // 生成图片
- // 将验证码存入 session
- // session.setAttribute("kaptcha", text);
-
// 验证码的归属者
String kaptchaOwner = CommunityUtil.generateUUID();
Cookie cookie = new Cookie("kaptchaOwner", kaptchaOwner);
@@ -154,7 +151,6 @@ public class LoginController implements CommunityConstant {
* @param code 验证码
* @param rememberMe 是否记住我(点击记住我后,凭证的有效期延长)
* @param model
- // * @param session 从 session 中取出验证码
* @param kaptchaOwner 从 cookie 中取出的 kaptchaOwner
* @param response
* @return
@@ -164,7 +160,7 @@ public class LoginController implements CommunityConstant {
@RequestParam("password") String password,
@RequestParam("code") String code,
@RequestParam(value = "rememberMe", required = false) boolean rememberMe,
- Model model, /*HttpSession session, */HttpServletResponse response,
+ Model model, HttpServletResponse response,
@CookieValue("kaptchaOwner") String kaptchaOwner) {
// 检查验证码
// String kaptcha = (String) session.getAttribute("kaptcha");