Ben 1 年之前
父节点
当前提交
019e124d50
共有 3 个文件被更改,包括 21 次插入10 次删除
  1. 1 0
      cmd/master.go
  2. 10 6
      internal/dto/response.go
  3. 10 4
      internal/server/server.go

+ 1 - 0
cmd/master.go

@@ -9,6 +9,7 @@ import (
 func main() {
 	r := gin.Default()
 	r.Use(gin.Recovery())
+	r.GET("/config", server.Config)
 	r.POST("/register", server.Register)
 	r.GET("/list", server.List)
 	r.GET("/secret", server.Secret)

+ 10 - 6
internal/dto/response.go

@@ -45,12 +45,7 @@ type RegisterResult struct {
 
 type ListResponse struct {
 	Response
-	Data ListResult `json:"data"`
-}
-
-type ListResult struct {
-	FreeTrialDuration int64  `json:"freeTrialDuration"`
-	Nodes             []Node `json:"nodes"`
+	Data []Node `json:"data"`
 }
 
 type DetailResponse struct {
@@ -62,3 +57,12 @@ type Node struct {
 	CountryCode string `json:"countryCode"`
 	Ip          string `json:"ip"`
 }
+
+type ConfigResponse struct {
+	Response
+	Data ConfigResult `json:"data"`
+}
+
+type ConfigResult struct {
+	FreeTrialDuration int64 `json:"freeTrialDuration"`
+}

+ 10 - 4
internal/server/server.go

@@ -13,6 +13,15 @@ import (
 var nodes = make([]*model.Node, 0)
 var locker = sync.RWMutex{}
 
+func Config(c *gin.Context) {
+	c.JSON(http.StatusOK, dto.ConfigResponse{
+		Response: dto.NewOkResponse(),
+		Data: dto.ConfigResult{
+			FreeTrialDuration: (time.Hour * 1).Milliseconds() / 1000,
+		},
+	})
+}
+
 func Register(c *gin.Context) {
 	locker.Lock()
 	defer locker.Unlock()
@@ -63,10 +72,7 @@ func List(c *gin.Context) {
 
 	c.JSON(http.StatusOK, dto.ListResponse{
 		Response: dto.NewOkResponse(),
-		Data: dto.ListResult{
-			Nodes:             dtoNodes,
-			FreeTrialDuration: (time.Hour * 1).Milliseconds() / 1000,
-		},
+		Data:     dtoNodes,
 	})
 }