Beego是一個高性能Go語言的web框架。在項目中經常需要返回json數據,這篇文章介紹如何在Beego中返回json數據。
首先需要導入Beego自帶的json包:
import "github.com/astaxie/beego" import "github.com/astaxie/beego/logs" import "github.com/astaxie/beego/context" import "encoding/json"
然后在Controller中定義一個結構體用來存儲json數據:
type UserController struct { beego.Controller } type User struct { Id int Name string Age int }
接著在Controller中定義一個方法用來返回json數據:
func (this *UserController) GetUser() { user := User{Id:1, Name:"張三", Age:18} responseData, err := json.Marshal(user) if err != nil { logs.Error("json.Marshal failed: %v", err) this.Abort("500") } else { this.Ctx.Output.Header("Content-Type", "application/json") this.Ctx.Output.Body(responseData) } }
該方法首先定義了一個User結構體,然后使用json.Marshal將結構體序列化為json格式的字符串。如果序列化失敗,返回500錯誤;否則將json數據返回到客戶端。
最后在路由中定義該方法:
beego.Router("/user", &UserController{}, "get:GetUser")
以上便是在Beego中返回json數據的方法,簡單易懂。祝大家使用愉快!
下一篇idea vue