Skip to content

XiaoBai-CQ/Docker-Test

Repository files navigation

简易留言板实现

简要概述

一个非常简单的简易留言板,具备了:用户注册、登录、发表留言、获取所有留言、删除留言的功能

首先go run main.go --db 初始化数据库表格(在dao中修改密码和操作数据库)

1. 用户注册

  • URL: /register
  • 方法: POST
  • 描述: 用户注册接口,接收用户名、昵称和密码,注册新用户。
  • 请求参数:
参数名 类型 说明
nickname string 用户昵称
username string 用户名
password string 密码
  • 响应:
    • 状态码: 200 OK
    • 响应体: success

2. 用户登录

  • URL: /login
  • 方法: POST
  • 描述: 用户登录接口,提供用户名和密码,成功返回 JWT Token。
  • 请求参数:
参数名 类型 说明
username string 用户名
password string 密码
  • 响应:

    • 状态码: 200 OK

    • 响应体:

      {
          "status": 200,
          "message": "login successful",
          "token": "JWT_TOKEN"
      }
      

3. 发布留言

  • URL: /messages
  • 方法: POST
  • 描述: 用户发布留言接口,支持发布根留言或对某条留言的回复(楼中楼)。
  • 请求参数:
参数名 类型 说明
content string 留言内容
parentid int 可选,父留言ID。若为根留言,传空值或不传此字段
  • 响应

    :

    • 状态码: 200 OK
    • 响应体: success

4. 获取所有留言及回复(楼中楼)

  • URL: /messages

  • 方法: GET

  • 描述: 获取所有留言及其回复(楼中楼)。

  • 响应

    :

    • 状态码: 200 OK

    • 响应体:

      [
        {
          "Username": "username1",
          "Content": "留言内容1",
          "Replies": [
            {
              "Username": "username2",
              "Content": "回复1",
              "Replies": [
                {
                  "Username": "username3",
                  "Content": "回复2"
                }
              ]
            }
          ]
        }
      ]
      

5. 删除留言

  • URL: /messages
  • 方法: POST
  • 描述: 删除留言接口,仅允许留言的作者删除自己发布的留言。
  • 请求参数:
参数名 类型 说明
messageid int 留言ID
  • 响应

    :

    • 状态码: 200 OK
    • 响应体: success
    • 状态码: 400 Bad Request
    • 响应体: 你无权操作

6. 点赞留言

  • URL: /messages/like
  • 方法: POST
  • 描述: 点赞留言接口,用户可以为留言点赞。每个用户只能对每条留言点赞一次。
  • 请求参数:
参数名 类型 说明
messageid int 留言ID
  • 响应

    :

    • 状态码: 200 OK
    • 响应体: 点赞成功
    • 状态码: 400 Bad Request
    • 响应体: 已经点赞过!

7. 取消点赞留言

  • URL: /messages/like
  • 方法: Delete
  • 描述: 取消点赞留言接口,用户可以取消之前对留言的点赞。
  • 请求参数:
参数名 类型 说明
messageid int 留言ID
  • 响应

    :

    • 状态码: 200 OK
    • 响应体: 取消点赞成功
    • 状态码: 400 Bad Request
    • 响应体: 未曾点赞过!

8. 获取留言点赞数

  • URL: /messages/like
  • 方法: GET
  • 描述: 获取指定留言的点赞数。
  • 请求参数:
参数名 类型 说明
messageid int 留言ID
  • 响应

    :

    • 状态码: 200 OK

    • 响应体:

      {
          "messageid": 1,
          "LikesCount": 5
      }
      

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published