從零開發區塊鏈應用 六 gin框架使用

2022-09-19 15:06:12 字數 2346 閱讀 2483

gin 是乙個用 go 語言編寫的 web 微框架,封裝比較優雅,api 友好,具有快速靈活,容錯方便等特點。它是乙個類似於 martini 但擁有更好效能的 api 框架,由於使用了 httpprouter,速度提高了近 40 倍。如果你是效能和高效的追求者,你會愛上 gin。

go 世界裡最流行的 web 框架,github 上有 46k+star。基於 httprouter 開發的 web 框架。中文文件齊全,簡單易用的輕量級框架。

}) // 啟動http服務,預設在0.0.0.0:8080啟動服務

r.run()

}

gin.setmode(gin.releasemode)
檢視gin原始碼,可發現gin框架提供了下列三種模式。

const (

// debugmode indicates gin mode is debug.

debugmode = "debug"

// releasemode indicates gin mode is release.

releasemode = "release"

// testmode indicates gin mode is test.

testmode = "test"

)

我們每次啟動gin框架,如果不設定以下gin模式

gin.setmode(gin.releasemode)
程式則會輸出一段提示

[warning] running in "debug" mode. switch to "release" mode in production.

- using env: export gin_mode=release

- using code: gin.setmode(gin.releasemode)

所以,現在我們就可以明白了,這三種mode分別對應了不同的場景。在我們開發除錯過程中,使用debug模式就可以了。在上線的時候,一定要選擇release模式。而test可以用在測試場景中。

//建立乙個路由引擎

router := gin.new()

// 建立乙個預設的路由引擎

router := gin.default()

gin.default() 和 gin.new() 的區別在於 gin.default() 也使用 gin.new() 建立engine例項,但是會預設使用 logger 和 recovery 中介軟體。

chain := router.group("/api/admin")
我們把乙個模組相關的方法都寫在乙個路由下。便於管理和查詢相關的**。

gin框架正好為我們提供了這個方法。

**舉例如下

//v1組路由

v1:=router.group("/v1")

//v2組路由

v2:=router.group("/v2")

// 新增banner

chain.post("/banner/add", handler.addbanner)

當客戶端以post方法請求.../banner/add 路徑時,會執行後面的函式

func addbanner(ctx *gin.context)
web伺服器收到客戶端的http請求,會針對每一次請求,分別建立乙個用於代表請求的request物件、和代表響應的response物件。

故:當需要獲取客戶機提交過來的資料時,找request物件就行了。

當需要向客戶機輸出資料,找response物件。

router.run(config.conf.console.port)
預設在0.0.0.0:8080啟動服務

從零開發區塊鏈應用 七 gin框架引數獲取

目錄query指的是url 後面攜帶的引數,例如user info?username 張三 password 123。獲取請求的query引數的方法如下 username ctx.defaultquery username 杰哥的技術雜貨鋪 password ctx.query password 完...

區塊鏈專案開發區塊鏈的價值

傳統的資料安全,是靠中心化的資料中心實現的,這種中心化資料安全是使用權威性來得到認可和信任,也就是資料可信任是建立在大家所認可的權威性基礎之上的,但是這種資料模式對於信任的展示是個雙刃劍,如果被質疑資料安全問題,中心化的資料中心其實無法證明資料的可信任性,因為資料是被中心所控制的,乙個資料管理員可以...

區塊鏈開發公司多用途開發 區塊鏈商城怎麼樣

2018年是區塊鏈技術發展的一年,這一年湧起大大小小的區塊鏈開發公司,是什麼使他們如此痴迷冒著風險去與這麼競爭對手去競爭呢?區塊鏈技術的魅力如此之大,其中又有什麼奧秘呢?2009年初次出現比t幣時人們不以為然 近十年後的今天,比t幣的底層技術區塊鏈技術將改變世界,區塊鏈如今的應用突破了侷限,應用在我...