使用 MixGo 快速開(kāi)發(fā) API 項(xiàng)目【視頻教程】

本視頻采用 MixGo V1.1 版本

當(dāng)我們習(xí)慣將 go 生態(tài)的不同的流行庫(kù)拼裝起來(lái)開(kāi)發(fā)項(xiàng)目時(shí),mix-go 就非常適合你,他幫助你創(chuàng)建骨架代碼把各種流行的庫(kù)組合起來(lái),幫助你快速開(kāi)發(fā)各種類(lèi)型的項(xiàng)目。

安裝 golang

配置環(huán)境變量

  • 修改 golang 自己的環(huán)境變量
    • 開(kāi)啟 go mod
    • 配置代理
    • 配置庫(kù)哈希效驗(yàn)網(wǎng)站
go env -w GO111MODULE="on" GOPROXY="https://goproxy.io,direct" GOSUMDB="sum.golang.org"
  • $GOPATH/bin 目錄加入到 $PATH

打印 GOPATH

go env GOPATH

編輯 ~/.bashrc or ~/.zshrc 加入 $GOPATH/bin

export PATH="$PATH:/Users/**/go/bin"

安裝 mixcli

go get github.com/mix-go/mixcli

創(chuàng)建項(xiàng)目

$ mixcli new hello
Use the arrow keys to navigate: ↓ ↑ → ← 
? Select project type:
    CLI
  ? API
    Web (contains the websocket)
    gRPC

骨架細(xì)節(jié)講解

觀看視頻收聽(tīng)以下內(nèi)容

  • 配置文件
  • di 依賴(lài)注入
  • gin 相關(guān)
  • gorm 的使用
  • jwt 處理

遺漏未講的內(nèi)容: 代碼發(fā)布

完整的代碼目錄結(jié)構(gòu)如下:

.
├── .env
├── .gitignore
├── README.md
├── bin
│   ├── .gitignore
│   └── hello_linux
├── commands
│   ├── api.go
│   ├── main.go
│   └── welcome.go
├── conf
│   └── config.yml
├── configor
│   └── main.go
├── controllers
│   ├── auth.go
│   ├── hello.go
│   └── user.go
├── di
│   ├── goredis.go
│   ├── gorm.go
│   ├── server.go
│   ├── session.go
│   └── zap.go
├── dotenv
│   └── main.go
├── go.mod
├── go.sum
├── main.go
├── middleware
│   ├── auth.go
│   └── cors.go
├── models
│   └── users.go
├── routes
│   └── main.go
└── runtime
    ├── .gitignore
    └── logs
        └── mix.log

我們只需要將編譯好的二進(jìn)制(交叉編譯)加上外部文件發(fā)布到線(xiàn)上即可

交叉編譯: GOOS=linux GOARCH=amd64 go build -o bin/hello_linux main.go

.
├── .env
├── bin
│   └── hello_linux
├── conf
│   └── config.yml
└── runtime
  • .env 需要修改為線(xiàn)上的數(shù)據(jù)庫(kù)賬號(hào)
  • conf 的配置文件必須發(fā)到線(xiàn)上
  • bin 二進(jìn)制必須放到這個(gè)目錄,因?yàn)樽x取配置文件是以這個(gè)目錄為根目錄
  • runtime 目錄必須有,不然日志創(chuàng)建不成功會(huì)拋出異常
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容