Gin は Go の世界で最も高速なフレームワークの 1 つです。ただし、ジンに欠けている機能が 1 つあります。それはホット リアロッドです。このブログでは、Gin プロジェクトでホット 再ロード機能を有効にする方法を説明します。
これがあなたのメインだと仮定してください。行きましょう
package main import ( "fmt" "net/http" "github.com/gin-gonic/gin" ) func successResponse(data interface{}) gin.H { return gin.H{ "status": "success", "data": data, } } func successResponseWithMessageAndCode(data interface{}, message string, code int,c *gin.Context) { c.JSON(code, gin.H{ "status": "success", "data": data, "message": message, }) } func main() { r := gin.Default() fmt.Println("Hello World") r.GET("/", func(c *gin.Context) { data:= map[string]interface{}{ "message": "Hello World", } successResponseWithMessageAndCode(data, "Success", http.StatusOK, c) }) r.GET("/hello", func(c *gin.Context) { c.JSON(http.StatusOK, gin.H{ "message": "Hello World", }) }) r.Run("localhost:8080") }
Air (https://github.com/air-verse/air) - Go アプリのライブ リロード
このコマンドを使用して Air をインストールしますか?
go install github.com/air-verse/air@latest
次に、このコマンドを使用して .air.toml ファイルを追加します
air init
air コマンドが見つからない場合は、Go bin ディレクトリが PATH にないことが原因である可能性があります
その場合はフィッシュターミナルを使用します
まず、Go がバイナリをインストールする場所を調べてみましょう。次のコマンドを実行します:
echo $GOPATH/bin
$GOPATH が設定されていない場合、デフォルトの場所は通常 ~/go/bin です。
次に、このディレクトリを Fish の PATH に追加しましょう。 Fish 構成ファイルを開きます:
nano ~/.config/fish/config.fish
次の行をファイルに追加します:
set -gx PATH $PATH $GOPATH/bin
$GOPATH が設定されていない場合は、次のようなフルパスを使用します。
set -gx PATH $PATH ~/go/bin
ファイルを保存してエディタを終了します。
Fish 設定をリロードします:
~/.config/fish/config.fish
次に、もう一度空気を流してみてください:
air
bash ターミナルを使用している場合は、.~/bashrc ファイルを編集する必要があります。
次に .air.toml ファイルを編集します
root = "." tmp_dir = "tmp" [build] cmd = "go build -o ./tmp/main ." bin = "tmp/main" full_bin = "APP_ENV=dev APP_USER=air ./tmp/main" include_ext = ["go", "tpl", "tmpl", "html"] exclude_dir = ["assets", "tmp", "vendor"] include_dir = [] exclude_file = [] log = "air.log" delay = 1000 # ms stop_on_error = true send_interrupt = false kill_delay = 500 # ms [log] time = false [color] main = "magenta" watcher = "cyan" build = "yellow" runner = "green" [misc] clean_on_exit = true
ホットリロード動作を改善するために、Gin アプリケーションが :8080 だけではなくローカルホストでリッスンするようにしてください
r.Run("localhost:8080")
そして、 run go run main.go の代わりに、air を実行して、その魔法を見てみましょう。
以上がGin プロジェクトでホット リロードを有効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。