feat: 添加微语功能

- 新增微语页面,类似 Twitter/QQ 空间的短内容发布平台
- 添加 GitHub 风格热力图组件展示发布活动
- 支持发布微语、图片上传、标签、Emoji
- 支持点赞、评论功能
- 右侧栏显示统计数据和热门标签
- 支持按标签筛选微语
- 后端新增微语相关 API(CRUD、点赞、评论、标签)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
Jiao77
2026-03-05 16:56:48 +08:00
parent 5986f116ec
commit 0961bbd1b7
11 changed files with 2276 additions and 0 deletions

View File

@@ -33,6 +33,7 @@ func main() {
authHandler := handlers.NewAuthHandler(jwtManager)
commentHandler := handlers.NewCommentHandler()
likeHandler := handlers.NewLikeHandler()
microHandler := handlers.NewMicroHandler()
// 创建路由
r := gin.New()
@@ -70,6 +71,15 @@ func main() {
api.GET("/likes", likeHandler.GetLikeStatus)
api.POST("/likes", likeHandler.ToggleLike) // 允许访客点赞(基于 IP Hash
// 微语公开接口
api.GET("/micro", microHandler.GetMicros)
api.GET("/micro/stats", microHandler.GetMicroStats)
api.GET("/micro/heatmap", microHandler.GetMicroHeatmap)
api.GET("/micro/tags", microHandler.GetMicroTags)
api.GET("/micro/:id", microHandler.GetMicro)
api.POST("/micro/:id/like", microHandler.ToggleMicroLike) // 允许访客点赞
api.GET("/micro-comments", microHandler.GetMicroComments) // 获取微语评论
// 需要认证的接口
authGroup := api.Group("")
authGroup.Use(middleware.AuthMiddleware(jwtManager))
@@ -81,6 +91,14 @@ func main() {
// 评论相关(需要登录才能评论)
authGroup.POST("/comments", commentHandler.CreateComment)
authGroup.DELETE("/comments/:id", commentHandler.DeleteComment)
// 微语相关(需要登录才能发布和删除)
authGroup.POST("/micro", microHandler.CreateMicro)
authGroup.DELETE("/micro/:id", microHandler.DeleteMicro)
// 微语评论相关
authGroup.POST("/micro-comments", microHandler.CreateMicroComment)
authGroup.DELETE("/micro-comments/:id", microHandler.DeleteMicroComment)
}
// 管理员接口