溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

gin在golang中的應(yīng)用

發(fā)布時(shí)間:2020-06-21 12:57:07 來(lái)源:億速云 閱讀:155 作者:元一 欄目:編程語(yǔ)言

Gin 是一個(gè) Go (Golang) 語(yǔ)言框架。 它是一個(gè)擁有更好性能的 martini-like API 框架, 由于 httprouter,速度提高了近 40 倍。 如果你是性能和高效的追求者, 那么你會(huì)愛上 Gin。

其實(shí)對(duì)于golang而言,web框架的依賴要遠(yuǎn)比Python,Java之類的要小。

自身的net/http足夠簡(jiǎn)單,性能也非常不錯(cuò)??蚣芨袷且恍┏S煤瘮?shù)或者工具的集合。借助框架開發(fā),不僅可以省去很多常用的封裝帶來(lái)的時(shí)間,也有助于團(tuán)隊(duì)的編碼風(fēng)格和形成規(guī)范。

下面就Gin的用法做一個(gè)簡(jiǎn)單的介紹。

首先需要安裝,安裝比較簡(jiǎn)單,使用go get即可:

go get gopkg.in/gin-gonic/gin.v1

gin的版本托管再 gopkg的網(wǎng)站上。我在安裝的過(guò)程中,gokpg卡住了,后來(lái)不得不根據(jù)gin里的godep的文件,把響應(yīng)的源碼從github上下載,然后copy到對(duì)應(yīng)的目錄。

Hello World

使用Gin實(shí)現(xiàn)Hello world非常簡(jiǎn)單,創(chuàng)建一個(gè)router,然后使用其Run的方法:

import (
    "gopkg.in/gin-gonic/gin.v1"
    "net/http"
)
func main(){
    
    router := gin.Default()
    router.GET("/", func(c *gin.Context) {
        c.String(http.StatusOK, "Hello World")
    })
    router.Run(":8000")
}

簡(jiǎn)單幾行代碼,就能實(shí)現(xiàn)一個(gè)web服務(wù)。使用gin的Default方法創(chuàng)建一個(gè)路由handler。然后通過(guò)HTTP方法綁定路由規(guī)則和路由函數(shù)。

不同于net/http庫(kù)的路由函數(shù),gin進(jìn)行了封裝,把request和response都封裝到gin.Context的上下文環(huán)境。最后是啟動(dòng)路由的Run方法監(jiān)聽端口。麻雀雖小,五臟俱全。當(dāng)然,除了GET方法,gin也支持POST,PUT,DELETE,OPTION等常用的restful方法。

以上就是golang gin可以做什么的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注億速云其它相關(guān)文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI