diff --git a/go.mod b/go.mod index 6e0f612..ba40eaf 100644 --- a/go.mod +++ b/go.mod @@ -1,3 +1,5 @@ -module Backend-V3 +module Cloudreve go 1.12 + +require github.com/gin-gonic/gin v1.4.0 diff --git a/main.go b/main.go index 89490cd..ab7dae3 100644 --- a/main.go +++ b/main.go @@ -1,7 +1,13 @@ package main -import "fmt" +import ( + "Cloudreve/routers" +) func main() { - fmt.Println("test") + + api := routers.InitRouter() + + api.Run(":5000") + } diff --git a/routers/controllers/ping.go b/routers/controllers/ping.go new file mode 100644 index 0000000..f1fdbbb --- /dev/null +++ b/routers/controllers/ping.go @@ -0,0 +1,14 @@ +package controllers + +import ( + "Cloudreve/serializer" + "github.com/gin-gonic/gin" +) + +// Ping 状态检查页面 +func Ping(c *gin.Context) { + c.JSON(200, serializer.Response{ + Code: 0, + Msg: "Pong", + }) +} diff --git a/routers/router.go b/routers/router.go new file mode 100644 index 0000000..fec749e --- /dev/null +++ b/routers/router.go @@ -0,0 +1,18 @@ +package routers + +import ( + "Cloudreve/routers/controllers" + "github.com/gin-gonic/gin" +) + +func InitRouter() *gin.Engine { + r := gin.Default() + + // 路由 + v3 := r.Group("/Api/V3") + { + v3.GET("Ping", controllers.Ping) + + } + return r +} diff --git a/serializer/common.go b/serializer/common.go new file mode 100644 index 0000000..b4931ec --- /dev/null +++ b/serializer/common.go @@ -0,0 +1,9 @@ +package serializer + +// Response 基础序列化器 +type Response struct { + Code int `json:"code"` + Data interface{} `json:"data,omitempty"` + Msg string `json:"msg"` + Error string `json:"error,omitempty"` +}