暫無描述

shawei_zz c238017510 ceshi 2 年之前
.svn 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
comm 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
conf 22a9f30742 库存管理bug修复 2 年之前
demo 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
dist 22a9f30742 库存管理bug修复 2 年之前
dist-local80 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
dist0813 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
docs 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
html 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
mdns 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
middleware 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
models 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
pkg 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
routers ee16b968d3 过程分析折线图 2 年之前
service 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
test 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
uploads 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
.gitignore 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
KPTAdmin32.exe 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
KPTAdmin64.exe 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
KPTAdmin641.exe 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
LICENSE 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
README.md 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
arm.bat 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
db.sql 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
dist(3).zip 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
doc.bat 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
go.mod 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
linux64.bat 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
linux自启动.txt 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
main.go c238017510 ceshi 2 年之前
tmrgo.exe 22a9f30742 库存管理bug修复 2 年之前
win32.bat 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前
win64.bat 5df4dd98c3 Signed-off-by: shawei_zz <shawei_zz@163.com> 2 年之前

README.md

KPTYUN

一个go api 后端例子,包含JWT,RBAC(Casbin),增删改查, 一键生成 Restful API接口(不依赖orm)。

主要说明

  • v1.1.2

  • user
    • username password
  • role
    • name
  • menu
    • name path method

目录结构

  • conf:用于存储配置文件
  • docs: 文档(SQL和API注释)
  • logs: 日志
  • middleware:应用中间件
  • models:应用数据库模型
  • pkg:第三方包
  • routers: 路由逻辑处理
  • service: 逻辑处理
  • test: 单元测试

权限验证说明

利用的casbin库, 将 user role menu 进行自动关联

项目启动时,会自动加载权限. 如有更改,会删除对应的权限,重新加载.

用户关联角色  
角色关联菜单  

权限关系为:
角色(role.name,menu.path,menu.method)  
用户(user.username,role.name)

例如:
test      /api/v1/users       GET
zhuhongbin     test

当zhuhongbin  GET  /api/v1/users 地址的时候,会去检查权限,因为他属于test组,同时组有对应权限,所以本次请求会通过。

用户 admin 有所有的权限,不进行权限匹配

登录接口 /auth  不进行验证

请求

请求和接收 都是 传递 json 格式 数据

例如:
访问 /auth    获取token
{
	"username": "admin",
	"password": "123456"
}

访问  /api/v1/users   
请求头设置  Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

How to run

Required

  • Mysql

Ready

Create a go database and import SQL

创建一个库,然后导入sql,创建表!

Conf

You should modify conf/app.ini

[database]
Type = mysql
User = root
Password =
Host = 127.0.0.1:3306
Name = go
TablePrefix = go_

Installation


yum install go -y 


cd $GOPATH/src/github.com/kptyun/go-admin
go build main.go
go run  main.go 

## 热编译,开发时使用

go get github.com/silenceper/gowatch

gowatch   

Run

Project information and existing API

[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.
 - using env:	export GIN_MODE=release
 - using code:	gin.SetMode(gin.ReleaseMode)

Listening port is 8000

默认 账户 密码 都为  123456

  • 不用orm依赖,直接输入表名字就可以 增删改查

    
    get   http://127.0.0.1:8000/api/restful/go_user
    get   http://127.0.0.1:8000/api/restful/go_user/1
    post   http://127.0.0.1:8000/api/restful/go_user
    数据格式  json  支持批量
    [{
    	"username":"hequan",
    	"password":"hequan1",
    	"created_on": "0",
    	"modified_on":"0",
    	"deleted_on":"0"
    }]
    put  http://127.0.0.1:8000/api/restful/go_user/2
    数据格式  json
    {
    	"password":"654321"
    }
    delete http://127.0.0.1:8000/api/restful/go_user/2
    

API 注释

http://127.0.0.1:8000/swagger/index.html

Features

- RESTful API
- Gorm
- logging
- Jwt-go
- Swagger
- Gin
- Graceful restart or stop (fvbock/endless)
- App configurable
- 一键生成 Restful API接口

其他

##更新注释
swag init