這篇文章將為大家詳細(xì)講解有關(guān)gin框架有哪些優(yōu)勢,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
gin和django對比
中間件
利用函數(shù)調(diào)用棧后進(jìn)先出的特點(diǎn),巧妙的完成中間件在自定義處理函數(shù)完成的后處理的操作。
django它的處理方式是定義個類,請求處理前的處理的定義一個方法,請求處理后的處理定義一個方法。
gin的方式更靈活,但django的方式更加清晰。
請求參數(shù)綁定
對于獲取請求內(nèi)容,在模型綁定當(dāng)中,有以下的場景
在gin框架的對于這些場景給出的答案是:提供不同的方法,滿足以上的需求。這里的關(guān)鍵點(diǎn)還是在于使用場景是怎樣的。
// 自動更加請求頭選擇不同的綁定器對象進(jìn)行處理 func (c *Context) Bind(obj interface{}) error { b := binding.Default(c.Request.Method, c.ContentType()) return c.MustBindWith(obj, b) } // 綁定失敗后,框架會進(jìn)行統(tǒng)一的處理 func (c *Context) MustBindWith(obj interface{}, b binding.Binding) (err error) { if err = c.ShouldBindWith(obj, b); err != nil { c.AbortWithError(400, err).SetType(ErrorTypeBind) } return } // 用戶可以自行選擇綁定器,自行對出錯處理。自行選擇綁定器,這也意味著用戶可以自己實(shí)現(xiàn)綁定器。 // 例如:嫌棄默認(rèn)的json處理是用官方的json處理包,嫌棄它慢,可以自己實(shí)現(xiàn)Binding接口 func (c *Context) ShouldBindWith(obj interface{}, b binding.Binding) error { return b.Bind(c.Request, obj) }
關(guān)于gin框架有哪些優(yōu)勢就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
本文標(biāo)題:gin框架有哪些優(yōu)勢-創(chuàng)新互聯(lián)
本文鏈接:http://vcdvsql.cn/article28/ccsdcp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、響應(yīng)式網(wǎng)站、App開發(fā)、微信小程序、虛擬主機(jī)、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容