真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

B站go語言用的什么框架,b站是用go寫的嗎

go語言框架gin之集成swagger

1.先安裝Go對應的開源Swagger相關的庫

創(chuàng)新互聯(lián)長期為上千多家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為渦陽企業(yè)提供專業(yè)的做網(wǎng)站、網(wǎng)站建設,渦陽網(wǎng)站改版等技術服務。擁有10年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

go get?github.com/swaggo/swag/cmd/swag

go get github.com/swaggo/gin-swagger

go get?github.com/swaggo/files

go get?github.com/alecthomas/template

2.驗證是否安裝成功:swag -v

3.針對接口寫入注解

// @Summary 獲取多個標簽

// @Tags 標簽

// @Produce? json

// @Param name query string false "標簽名稱" maxlength(100)

// @Param state query int false "狀態(tài)" Enums(0, 1) default(1)

// @Param page query int false "頁碼"

// @Param page_size query int false "每頁數(shù)量"

// @Success 200 {object} model.TagSwagger "成功"

// @Failure 400 {object} errcode.Error "請求錯誤"

// @Failure 500 {object} errcode.Error "內(nèi)部錯誤"

// @Router /api/v1/tags [get]

func (t Tag) List(c *gin.Context) {

}

// @Summary 新增標簽

// @Tags 標簽

// @Produce? json

// @Param name body string true "標簽名稱" minlength(3) maxlength(100)

// @Param state body int false "狀態(tài)" Enums(0, 1) default(1)

// @Param created_by body string false "創(chuàng)建者" minlength(3) maxlength(100)

// @Success 200 {object} model.Tag "成功"

// @Failure 400 {object} errcode.Error "請求錯誤"

// @Failure 500 {object} errcode.Error "內(nèi)部錯誤"

// @Router /api/v1/tags [post]

func (t Tag) Create(c *gin.Context) {

}

// @Summary 更新標簽

// @Tags 標簽

// @Produce? json

// @Param id path int true "標簽ID"

// @Param name body string false "標簽名稱" minlength(3) maxlength(100)

// @Param state body int false "狀態(tài) (0為未刪除、1為已刪除)" Enums(0, 1) default(1)

// @Param modified_by body string true "修改者" minlength(3) maxlength(100)

// @Success 200 {array} model.Tag "成功"

// @Failure 400 {object} errcode.Error "請求錯誤"

// @Failure 500 {object} errcode.Error "內(nèi)部錯誤"

// @Router /api/v1/tags/{id} [put]

func (t Tag) Update(c *gin.Context) {

}

4.針對整個項目進行注解,直接在main方法寫入如下注解

//@title 項目名稱

//@version 1.0

//@description 這里是描述

func main() {

5.生成執(zhí)行 swag init

這時會在我項目的docs文件夾下面生成docs.go、swagger.json、swagger.yaml三個文件

6.要在routers中進行默認初始化和注冊對應的路由:

r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))

同時要引用 _"blog-service/docs" ,不然會報錯

7.查看接口文檔 :

8.ok,完成

go語言web框架beego安裝(go mod方式)

go語言web框架beego安裝(go mod方式)_不忘初心,方得始終-CSDN博客

重要:將bee命令放到GOROOT/bin目錄下,這步很關鍵

cp bee /usr/local/go/bin/

注:或者可以將GOPATH/bin設置為環(huán)境變量

echo ’export PATH=" PATH"' ~/.bashrc

source ~/.bashrc

router路由下方法名要大寫,訪問權限

wq保存

生效環(huán)境變量: source /etc/profile

go build -o abc.exe可指定編譯后的文件名

Golang常用環(huán)境變量說明與設置詳解

環(huán)境變量GOBIN表示我們開發(fā)程序編譯后二進制命令的安裝目錄。

當我們使用go install命令編譯和打包應用程序時,該命令會將編譯后二進制程序打包GOBIN目錄,一般我們將GOBIN設置為GOPATH/bin目錄。

export GOBIN=$GOPATH/bin

Go get包管理mod

windows下默認項目路徑在go安裝目錄的src下(beego)

b站用的什么典型數(shù)據(jù)庫

Mysql。

B站后臺應該也是golang和java混搭的,目前B站不是在逐漸去除java嘛,還有就是B站后臺穩(wěn)不穩(wěn)定跟用什么搭建沒有呀直接關系,與一個系統(tǒng)的架構(gòu)設計,熔斷降級等配置有關系,是否有完善的監(jiān)控系統(tǒng),有強大的運維團隊,有高質(zhì)量的代碼等因素有關系。從之前B站泄露出來的代碼看,目前B站后臺的核心技術棧是Go語言。至于為什么用Go語言后面會說到,事實上B站流量在行業(yè)內(nèi)并不是頂尖,就算是用Go語言作為核心技術棧的網(wǎng)站中,B站也不是技術難度最高的。不過同樣值得關注的是,B站對于UP主的保護是全行業(yè)最佳,剛剛B站也簽下了馮提莫,不斷大動作的B站未來發(fā)展可期。隨著行業(yè)的不斷發(fā)展,各種新興語言不斷出現(xiàn),一個項目中多種語言并存、互補的現(xiàn)象是必然的,也許幾十年后你還會發(fā)現(xiàn)用Go寫的后臺被其他語言改寫了,或者某種你以為已經(jīng)成為歷史的語言卷土重來也不是沒有可能。


當前名稱:B站go語言用的什么框架,b站是用go寫的嗎
網(wǎng)址分享:http://weahome.cn/article/hdgeoh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部