Передача полезной нагрузки одного запроса API в вызов API 2 - PullRequest
0 голосов
/ 01 августа 2020

Мне нравится создавать два API, в которых делается запрос на получение информации в одном API, а вставка в базу данных выполняется в другом вызове API. Как я мог добиться этого в Fiber.

рассмотрим следующий блок кода

func getName(c *fiber.Ctx) {
   // get the name api
   // call the insertName func from here with name argument
   insertName(arg)
}

func insertName() {
   // insert the argument to the database
}

Как вызвать вторую функцию с помощью POST в Go структуре волокна, чтобы я передал полезная нагрузка в другой API.

1 Ответ

1 голос
/ 01 августа 2020

Это мой подход:

Вот пакет для маршрутизации и обработчик

package path

// ./path/name
app.Get("/name", func(c *fiber.Ctx) {
   p := controller.Name{name: "random_name"}

   result := controller.InsertName()
   c.JSON(fiber.Map{
      "success": result
   })
})

app.Post("/name", func(c *fiber.Ctx) {
   p := new(controller.Name)
​
   if err := c.BodyParser(p); err != nil {
      log.Fatal(err)
   }

   result := controller.InsertName(p)
   c.JSON(fiber.Map{
      "success": result
   })
})

Вот пакет для сохранения и чтения из базы данных

package controller

// ./controller/name
type Name struct {
    Name string `json:"name" xml:"name" form:"name"`
}

func insertName(n Name) bool {
   // insert the argument to the database
   return resultFromDatabase
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...