Fiber 的响应 API 很直白:
app.Get("/text", func(c fiber.Ctx) error {
return c.SendString("plain text")
})
app.Get("/json", func(c fiber.Ctx) error {
return c.JSON(fiber.Map{
"message": "ok",
})
})
app.Get("/status", func(c fiber.Ctx) error {
return c.SendStatus(fiber.StatusNoContent)
})
app.Get("/created", func(c fiber.Ctx) error {
return c.Status(fiber.StatusCreated).JSON(fiber.Map{
"id": 101,
})
})你可以把它理解成不同窗口的回执模板:
SendString:最普通纸质回单JSON:标准结构化回执SendStatus:只给状态,不给正文Status(...).JSON(...):先确定办事结果级别,再附详细回单
#一个很实用的建议
在真实项目里,尽量让 API 回执有稳定格式:
type APIResponse struct {
Code string `json:"code"`
Message string `json:"message"`
Data any `json:"data,omitempty"`
}
func ok(c fiber.Ctx, data any) error {
return c.JSON(APIResponse{
Code: "OK",
Message: "success",
Data: data,
})
}Fiber 不会替你定这个协议。
这片快线城区把路修得很好,但不会帮你规定全城所有回执公文格式。