GolangでWebAPIを作るハンズオン(その1)


GolangでWebAPIを作るハンズオン(その1)です。

必要なもの

Golang

公式の Download and install から、もしくは Homebrew などを使いインストールしてください。 go version コマンドを実行し、バージョン情報が表示されることを確認してください。

$ go version    # go version go1.20.3 darwin/amd64

Editor

Visual Studio Code や Goland などを用意してください。 私のおすすめは Goland です。(有料ですが。。。)

Docker

ローカル環境でMySQLを動かすために使います。 今回は使用しませんが、将来的に使います。

HelloWorld

任意の作業ディレクトリに移動し、main.go というファイルを作成します。

touch main.go

作成したファイルをエディタで開き、以下のコードを入力します。

main.go

package main

import "fmt"

func main() {
	fmt.Println("Hello World")
}

入力が完了したら以下のコマンドを実行し、Hello World と出力されることを確認します。

go run main.go    # Hello World

サーバーを起動させてHello World

正常に Hello World と表示されましたか? 次に以下のコードを入力し、main.go を実行します。

main.go

package main

import (
	"fmt"
	"net/http"
)

func handler(w http.ResponseWriter, r *http.Request) {
	fmt.Fprintf(w, "Hello, World")
}

func main() {
	http.HandleFunc("/", handler)
	http.ListenAndServe(":8080", nil)
}

ブラウザを表示し、http://localhost:8080/ にアクセスすると Hello World と表示されれば成功です。

最後に control + c でGoの実行を停止させます。

参考

Go言語でhttpサーバーを立ち上げてHello Worldをする