
Go言語学習15日目!
今まではコチラ
Goの標準ライブラリ「net/http」 を使って、シンプルなWebサーバーを立ててみました!
「えっ、こんなに簡単にサーバー作れるの?」と驚いたので、
今回はその手順とコードをまとめていきます。
目標:ブラウザで「Hello, Go!」を表示するWebサーバーを作る
使うのは、たった2つの関数でした
http.HandleFunchttp.ListenAndServe
Goの標準パッケージって本当に便利ですね。。
まずはサンプルコード
package main import ( "fmt" "net/http" ) func helloHandler(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, "Hello, Go!") } func main() { http.HandleFunc("/", helloHandler) fmt.Println("サーバー起動中:http://localhost:8080") err := http.ListenAndServe(":8080", nil) if err != nil { fmt.Println("サーバーエラー:", err) } }
実行手順:
- このコードを
main.goに保存 - ターミナルで以下を実行
go run main.go
- ブラウザで
http://localhost:8080にアクセス!
ブラウザ表示:
Hello, Go!
無事に表示されたら成功です!
コード解説
http.HandleFunc("/", helloHandler)
→ URLのルート("/")にアクセスした時の処理を登録helloHandler関数は、レスポンスとして「Hello, Go!」を返すだけの処理http.ListenAndServe(":8080", nil)
→ ポート8080でサーバーを起動する- エラーハンドリングも忘れずに!(Goらしさ)
本当にこれだけでWebサーバーが立つのは驚きでした。。
感じたこと
- サーバー構築ってもっと大変かと思ってたけど、Goなら数行でできる!
- 「リクエストが来たらこの関数を呼ぶ」という仕組みがシンプルでわかりやすい
- 実際の業務でも、ちょっとしたAPIやローカルツールならこれで十分そう
Goが「Web開発にも強い」と言われる理由が少しわかった気がします。。
(この記事は広告を含みます。)

