go-zero微服务框架 api 案例

最外层可以引入:

//=====================================> blog api v1 <=================================

import (
    "api/role.api"
    "api/menu.api"
    "api/user.api"
    "api/upload.api"
    "api/member.api"
    "api/article.api"
)

user.api

info(
    author: "lxl"
    date: "2022-12-20"
    desc: "user-api"
    email: "1123736022@qq.com"
    version: "v1"
)

type (
    // 一个用户
    UserList {
        Id         int64  `json:"id"`       //ID
        UserName   string `json:"userName"` //用户名
        Password   string `json:"password"` //密码
        NickName   string `json:"nickName"` //昵称
        Email      string `json:"email"`    //邮箱
        Image      string `json:"image"`    //头像
        CreateTime int64  `json:"createTime"`
        UpdateTime int64  `json:"updateTime"`
    }

    // 用户列表请求
    UserListReq {
        Page     int64  `json:"page"`
        PageSize int64  `json:"pageSize"`
        NickName string `json:"nickName"`
        Email    string `json:"email"`
    }
    // 用户列表响应
    UserListResp {
        List  []UserList `json:"list"`
        Code  int64      `json:"code"`
        Msg   string     `json:"msg"`
        Total int64      `json:"total"`
    }
    // 用户新增请求
    AddUserReq {
        UserName string `json:"userName"` //用户名
        Password string `json:"password"` //密码
        NickName string `json:"nickName"` //昵称
        Email    string `json:"email"`    //邮箱
        Image    string `json:"image"`    //头像
    }
    // 删除用户请求
    delUserReq {
        Id int64 `json:"id"`
    }
    // 批量删除用户请求
    batchDelUserReq {
        Ids string `json:"ids"`
    }
    // 获取用户信息响应
    UserInfoReply {
        // UserInfo UserList `json:"user_info"`
        Id   string `json:"id"`
        Name string `json:"name"`
    }
    // 用户登录请求
    UserLoginReq {
        UserName string `json:"userName"` //用户名
        Password string `json:"password"` //密码
    }
    // 用户登录响应
    UserLoginResp {
        Code int64  `json:"code"`
        Msg  string `json:"msg"`
    }
    // 用户响应
    UserResp {
        Code     int64           `json:"code"`
        Msg      string          `json:"msg"`
        Token    string          `json:"token"`
        UserInfo GetUserResponse `json:"userInfo"`
    }
    // 获取用户信息请求
    GetUserRequest {
        Id int64 `json:"id"`
    }

    GetUserResponse {
        Id         int64  `json:"id"`       //ID
        UserName   string `json:"userName"` //用户名
        NickName   string `json:"nickName"` //昵称
        Email      string `json:"email"`    //邮箱
        Image      string `json:"image"`    //头像
        CreateTime int64  `json:"createTime"`
        UpdateTime int64  `json:"updateTime"`
    }
    JwtTokenRequest {
    }

    JwtTokenResponse {
        AccessToken  string `json:"access_token"`
        AccessExpire int64  `json:"access_expire"`
        RefreshAfter int64  `json:"refresh_after"` // 建议客户端刷新token的绝对时间
    }
)

@server(
    prefix: api
    group: user
    jwt: JwtAuth
)

service blog {
    // 获取用户列表
    @handler getUserList
    post /user/getUserList (UserListReq) returns (UserListResp)
    // 添加用户
    @handler addUser
    post /user/addUser (AddUserReq) returns (UserResp)
    // 更新用户
    @handler updateUser
    post /user/updateUser (UserList) returns (UserResp)
    // 删除用户用户
    @handler delUser
    post /user/delUser (delUserReq) returns (UserResp)
    // 批量删除用户用户
    @handler batchDelUser
    post /user/batchDelUser (batchDelUserReq) returns (UserResp)
    // 获取用户信息
    @handler getUserInfo
    post /user/info (GetUserRequest) returns (GetUserResponse)
}

@server(
    prefix: api
    group: user
)

service blog {
    @handler userLogin
    post /user/login (UserLoginReq) returns (UserLoginResp)
    @handler JwtHandler
    post /user/token (JwtTokenRequest) returns (JwtTokenResponse)
}


点赞0
点击评论0
收藏0
浏览 22
 

还没有评论,快来发表第一个评论吧

免责声明:凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,注册用户和一般页面游览者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任(包括侵权责任、合同责任和其它责任)
*尊重作者,转载请注明出处!