- 采用 iris 框架目后台api IrisApiProject
- 采用了 gorm 数据库模块 和 jwt 的单点登陆认证方式
- 测试默认使用了 sqlite3 数据库
项目更新到了 iris v12,对应的也要 iris 升级
go get -u github.com/kataras/iris
如果要用旧版本的 iris ,需要克隆本项目 1.0 版本
- apidoc 接口文档目录
- caches redis缓存目录
- config 项目配置文件目录
- controllers 控制器文件目录
- database 数据库文件目录
- middleware 中间件文件目录
- models 模型文件目录
- routes 路由文件
- resources 前端文件
- tmp 测试数据库 sqlite3 文件目录
- tools 其他公用方法目录
拉取项目
git clone https://github.com/snowlyg/IrisApiProject.git
//github 太慢可以用 gitee
git clone https://gitee.com/dtouyu/IrisApiProject.git
加载依赖管理包 (解决国内下载依赖太慢问题)
使用 gopm 管理包
go get -v -u github.com/gpmgo/gopm
# 查看当前工程依赖
gopm list
# 显示依赖详细信息
gopm list -v
# 列出文件依赖
gopm list -t [file]
# 拉取依赖到缓存目录
gopm get -r xxx
# 仅下载当前指定的包
gopm get -d xxx
# 拉取依赖到$GOPATH
gopm get -g xxx
# 检查更新所有包
gopm get -u xxx
# 拉取到当前所在目录
gopm get -l xxx
# 运行当前目录程序
gopm run
# 生成当前工程的 gopmfile 文件用于包管理
gopm gen -v
# 根据当前项目 gopmfile 链接依赖并执行 go install
gopm install -v
# 更新当前依赖
gopm update -v
# 清理临时文件
gopm clean
# 编译到当前目录
gopm bin
项目配置文件 /config/config.toml
cp config.toml.example config.toml
运行项目
go get github.com/silenceper/gowatch
gowatch //安装 gowatch 后才可以使用这个命令,不然只能使用
go run main.go // go 命令
如果在 win7
环境下使用 Goland
开发 go 项目。 用 gowatch 或者 bee run 作为热加载服务,出现文件被其他进程占用而无法热加载的问题:
The system cannot find the file specified.
,The process cannot access the file because it is being used by another process.
可以尝试使用我修改的 gowatch 包。
go clone https://github.com/snowlyg/gowatch.git
替换有包文件到 github.com/silenceper/gowatch 替换原文件
cd github.com/silenceper/gowatch
go install
http test
go test -v //所有测试
go test -run TestUserCreate -v //单个测试
自动生成文档 (访问过接口就会自动成功) 因为原生的 jquery.min.js 里面的 cdn 是使用国外的,访问很慢。 有条件的可以开个 vpn ,如果没有可以根据下面的方法修改一下,访问就很快了
打开 /resource/apiDoc/index.html 修改里面的
https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js
国内的 cdn
https://cdn.bootcss.com/jquery/2.1.3/jquery.min.js
访问文档,从浏览器直接打开 http://localhost/apiDoc
输入地址 http://localhost:80
//在 conig/config.toml 内配置 LoginUserName
和 LoginPwd
项目管理员账号 : username 项目管理员密码 : password