go - 将一个 API 请求的负载传递给 API 调用 2
问题描述
我喜欢创建两个 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
}
如何在 Go Fiber 框架中使用 POST 调用第二个函数,以便我将有效负载传递给另一个 API。
解决方案
这是我的方法:
这是路由和处理程序的包
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
}
推荐阅读
- java - 无法在 apache jena 上添加新的 owl 文件
- java - 使用 SWIG 包装具有两个双向参数的函数以在 java [foo(char ** strs, unsigned int& size)] 中使用
- excel - 在复制和粘贴值之前从另一个工作簿中的列表中读取大写值
- python - Python多处理队列酸洗错误
- javascript - 为什么我的 div 容器中的元素会消失?
- python - python - 列出,打印
- gstreamer - 使用 libgstvaapi.so 的 gstreamer-vaapi 插件缺少 vaapih265enc
- ruby-on-rails - 添加@到friendly_id slug Ruby on Rails
- r - R中的循环For返回Null(空)值而不是预期
- python - 如何找到列表的最长连续非零子集?