/go-restapp-demo

REST服务demo

Primary LanguageGo

go-restapp-demo

基本的restful服务分为以下几个步骤:

  • 读取配置文件
  • 初始化Logger
  • 建立数据库连接
  • 设置HTTP
  • 启动服务
  • 服务状态检查

设置HTTP请求

设置HTTP请求又分为:

  1. 设置Header
  2. 注册路由
  3. 注册中间件

中间件

中间件实际上是对HTTP报文header部分的操作:

http-header

gin中使用use来注册中间件,详细代码参看 router/middleware

配置文件

使用viper设置、热更新配置文件。

配置文件需对应开发、测试、生产三种模式,匹配不同行为。

数据库设置

db设置

自定义错误码

定义和业务相关有的错误码,有利于排错。

自定义错误包参看代码 pkg\errno

错误码定义规则
服务级错误 服务模块 具体错误代码
1 00 01
  • 服务级别错误:1 为系统级错误;2 为普通错误,通常是由用户非法操作引起的
  • 服务模块为两位数:一个大型系统的服务模块通常不超过两位数,如果超过,说明这个系统该拆分了
  • 错误码为两位数:防止一个模块定制过多的错误码,后期不好维护
  • code = 0 说明是正确返回,code > 0 说明是错误返回
  • 错误通常包括系统级错误码和服务级错误码
  • 建议代码中按服务模块将错误分类
  • 错误码均为 >= 0 的数