参考資料とオススメUdemy
Ginとは
Goのフレームワークです。RESTAPIを簡単に構築できます。
非常に軽量で他のGoのフレームワークと比べて1番使われています。
Gin導入
Goモジュールの初期化をします。
go mod init プロジェクト名
次にGinをダウンロードします。
go get -u github.com/gin-gonic/gin
main.go
以下が公式ドキュメントのサンプルです。
main.go
package main
import "github.com/gin-gonic/gin"
func main() {
r := gin.Default()//これはHTTPリクエストを処理
r.GET("/ping", func(c *gin.Context) {
c.JSON(200, gin.H{
"message": "pong",
})
})
r.Run("localhost:8080") //ここだけ変更
以下のコマンドで実行します。
go run main.go
別のターミナルで開いてみると
% curl localhost:8080/ping
{"message":"pong"}%
になったらGinは起動できているみたいです。
ホットリロード
コードを変更するたびにサーバーを起動したり、止めたりすると面倒なのでホットリロード
します。
go install github.com/air-verse/air@latest
その後、(Mac想定)
echo 'export PATH=$PATH:$(go env GOPATH)/bin' >> ~/.bashrc
または
echo 'export PATH=$PATH:$(go env GOPATH)/bin' >> ~/.zshrc
を実行する。その後に
air init
を実行して.air.toml
を作成されます。
air
でサーバーを起動し、コードを変更すると再ビルドされコードの反映がされます。
Goはフロントエンドみたいな変更が少ないけど。。。。
Goはフロントエンドみたいに破壊的な変更はそんなに無さそうです。
ただRailsやLaravelみたいにコマンド一発でファイルを作ったりできないのが難点です。💦
Ginの公式ドキュメント
以下のドキュメントを読んでみてください。
Ginの公式ドキュメント