🐐
【golang】echoを使ってさくっとAPIを作成する話
Goが出た当初は環境設定がちょっとめんどかったイメージありますが、その辺をすっ飛ばして、公式に書いてる手順でechoを使って、さくっとAPIを実装していきます!
たぶん今はインストールすればGOPATH
とかもいい感じに設定してくれるはずです!(ウソついてたらすみません。)
環境
- Windows(10)
- Go(1.21.4)
- echo(v4)
事前準備
- Goのインストール
手順
サンプルプロジェクトの作成
1. フォルダ作成と移動
コマンドプロンプトを開いて、任意のフォルダまで移動してください。
※ デフォルトの階層でよければそのまま
echoサンプル用のフォルダを作成
mkdir {{ 任意フォルダ名 }}
作成したフォルダへ移動
cd {{ ↑で入力したフォルダ名 }}
2. プロジェクトの初期化
ここはフォルダ名と異なってもOK
go mod init {{ 任意プロジェクト名 }}
成功していればリザルトメッセージが表示されます。
result
go: creating new go.mod: module {{ ↑で入力したプロジェクト名 }}
3. echoのインストール
go get github.com/labstack/echo/v4
result
go: added github.com/labstack/echo/v4 v4.11.4
go: added github.com/labstack/gommon v0.4.2
go: added github.com/mattn/go-colorable v0.1.13
go: added github.com/mattn/go-isatty v0.0.20
go: added github.com/valyala/bytebufferpool v1.0.0
go: added github.com/valyala/fasttemplate v1.2.2
go: added golang.org/x/crypto v0.17.0
go: added golang.org/x/net v0.19.0
go: added golang.org/x/sys v0.15.0
go: added golang.org/x/text v0.14.0
サンプルプログラムの作成
1. server.goを作る
先ほどのフォルダ配下にserver.go
を作成します。
中身は公式のコードをコピペ。
server.go
package main
import (
"net/http"
"github.com/labstack/echo/v4"
)
func main() {
e := echo.New()
e.GET("/", func(c echo.Context) error {
return c.String(http.StatusOK, "Hello, World!")
})
e.Logger.Fatal(e.Start(":1323"))
}
2. ローカルサーバーを起動する
コマンドプロンプトで以下のコマンドを実行します。
※Portが空いてないとセキュリティの警告が出ますが、「アクセス許可」します。
go run server.go
Portが「1323」でローカルサーバが立ち上がります。
result
____ __
/ __/___/ / ___
/ _// __/ _ \/ _ \
/___/\__/_//_/\___/ v4.11.4
High performance, minimalist Go web framework
https://echo.labstack.com
____________________________________O/_______
O\
⇨ http server started on [::]:1323
3. 起動確認
以下のリンクをクリックして、ブラウザに「Hello, World!」が表示されれば、GET APIの完成です!
http://localhost:1323
あとがき
echoの公式のQuick Startが優秀すぎて、わざわざ書かなくてもよかったのでは疑惑はありますが・・・。
アウトプットすることが大事ですよね!笑
Discussion