Java教程
創新互聯公司服務項目包括老邊網站建設、老邊網站制作、老邊網頁制作以及老邊網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,老邊網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到老邊省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!
Linux入門
更多
首頁
?
Go語言WEB框架(Gin)詳解
在 Go語言開發的 Web 框架中,有兩款著名 Web 框架分別是 Martini 和 Gin,兩款畢悔顫 Web 框架相比較的話,Gin 自己說它比 Martini 要強很多。
Gin 是 Go語言寫的一個 web 框架,它具有運行速度快,分組的路由器,良好的崩潰捕獲和錯誤處理,非常好的支持中間件和 json。總之在 Go語言開發領域是一款值得好好研究的 Web 框架,開源網址:
首先下載安裝 gin 包:
go get -u github點抗 /手敗gin-gonic/gin
一個簡單的例子:
package main
import "github點抗 /gin-gonic/gin"
func main() {
//Default返回一個默認的路由引擎
r := gin.Default()
r.GET("/ping", func(c *gin.Context) {
//輸出json結果給調用方
c.JSON(200, gin.H{
"message": "pong",
})
})
r.Run() // listen and serve on 0.0.0.0:8080
}
編譯運行程序,打開瀏覽器,訪問頁面顯示:
{"message":"pong"}
gin 的功能不只是簡單輸出 Json 數據。它是一個輕量級的 WEB 框架,支持 RestFull 風格 API,支持 GET,POST,PUT,PATCH,DELETE,OPTIONS 等 http 方法,支持文件上傳,分組路由,Multipart/Urlencoded FORM,以及支持 JsonP,參數前念處理等等功能,這些都和 WEB 緊密相關,通過提供這些功能,使開發人員更方便地處理 WEB 業務。
Gin 實際應用
接下來使用 Gin 作為框架來搭建一個擁有靜態資源站點,動態 WEB 站點,以及 RESTFull API 接口站點(可專門作為手機 APP 應用提供服務使用)組成的,亦可根據情況分拆這套系統,每種功能獨立出來單獨提供服務。
下面按照一套系統但采用分站點來說明,首先是整個系統的目錄結構,website 目錄下面 static 是資源類文件,為靜態資源站點專用;photo 目錄是 UGC 上傳圖片目錄,tpl 是動態站點的模板。
當然這個目錄結構是一種約定,可以根據情況來修改。整個項目已經開源,可以訪問來詳細了解:具體每個站點的功能怎么實現呢?請看下面有關每個功能的講述:
靜態資源站點
一般網站開發中,我們會考慮把 js,css,以及資源圖片放在一起,作為靜態站點部署在 CDN,提升響應速度。采用 Gin 實現起來非常簡單,當然也可以使用 net/http 包輕松實現,但使用 Gin 會更方便。
不管怎么樣,使用 Go 開發,我們可以不用花太多時間在 WEB 服務環境搭建上,程序啟動就直接可以提供 WEB 服務了。
package main
import (
"net/http"
"github點抗 /gin-gonic/gin"
)
func main() {
router := gin.Default()
// 靜態資源加載,本例為css,js以及資源圖片
router.StaticFS("/public", http.Dir("D:/goproject/src/github點抗 /ffhelicopter/tmm/website/static"))
router.StaticFile("/favicon.ico", "./resources/favicon.ico")
// Listen and serve on 0.0.0.0:80
router.Run(":80")
}
首先需要是生成一個 Engine,這是 gin 的核心,默認帶有 Logger 和 Recovery 兩個中間件。
router := gin.Default()
StaticFile 是加載單個文件,而 StaticFS 是加載一個完整的目錄資源:
func (group *RouterGroup) StaticFile(relativePath, filepath string) IRoutes
func (group *RouterGroup) StaticFS(relativePath string, fs http.FileSystem) IRoutes
這些目錄下資源是可以隨時更新,而不用重新啟動程序。現在編譯運行程序,靜態站點就可以正常訪問了。
Go 語言被設計成一門應用于搭載 Web 服務器,存儲集群或類似用模激途的巨納歷型中央服務器的系統編程語言。對于高性能分布式系統領域而言,Go 語言無疑比大多數其它語旦茄襪言有著更高的開發效率。學習Go語言,可以說是很簡單的,入門快,想學習Go語言,可以到黑馬程序員看看,有新出的教程。
您好,Go語言可以實現PSD,吵頃它是一種靜態類型的編程語言,可以用來開發各種應用程序。Go語言擁有簡單的語法,可以讓開發者快速地實現PSD。Go語言支持多種編程范式,可以用來實現面向對象、函數式編程和過程式升汪陸編程等。Go語言擁有強大的標準庫,可以提供開發者豐富的功能,例如網絡通信、文件系統操作、數據結構操作等。Go語言還支持多種編程框架,可以用來實現PSD。Go語言還支持多種編程工具,可以幫助開發陵滾者更快地實現PSD。總之,Go語言是一種強大的編程語言,可以幫助開發者快速實現PSD。
1、服務器編程:以前你如果使用C或者C++做的那些事情,用Go來做很合適,例如處理日志、數據打包、虛擬機處理、文件系統等。
2、凳旁蠢分布式系統、數據庫代理器、中間件:例如Etcd。
3、網絡編程:這一塊目前應用最廣,包括Web應用、API應用、下載應用,而且Go內置的net/http包基本上把我們平常用到的網絡功能都實現了。
4、開發云平臺:目前國外很多云平臺在采用Go開發,我們所熟知的七牛云、華為云等等都有使用Go進行開發并且開源的成型的產品。
5、區塊鏈:目前有一種說法,技術從業人員把Go語言稱作為區塊鏈行業啟銷的開發語言。如果大家學習區塊鏈技術的話,就會發現現在有很多很多的區塊鏈的系統和應用都是采用Go進行開發的,比如ehtereum是目前知名度最大的公鏈,再比如fabric是目前最知名的聯盟鏈,兩棗陪者都有go語言的版本,且go-ehtereum還是以太坊官方推薦的版本。
自1.0版發布以來,go語言引起了眾多開發者的關注,并得到了廣泛的應用。go語言簡單、高效、并發的特點吸引了許多傳統的語言開發人員,其數量也在不斷增加。
使用 Go 語言開發的開源項目非常多。早期的 Go 語言開源項目只是通過 Go 語言與傳統項目進行C語言庫綁定實現,例如 Qt、Sqlite 等。
后期的很多項目都使用 Go 語言進行重新原生實現,這個過程相對于其他語言要簡單一些,這也促成了大量使用 Go 語言原生開發項目的出現。
網站題目:go語言玩偶圖片 go語言入門經典
當前網址:http://vcdvsql.cn/article44/ddpeghe.html
成都網站建設公司_創新互聯,為您提供云服務器、企業建站、、網站收錄、動態網站、全網營銷推廣
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯