【実務向け】Go HTTPリクエスト処理|net/httpでの基本と実装パターン

プログラム

Go言語でWeb開発をする際、最も重要なのがHTTPリクエストの処理です。
標準ライブラリnet/httpを使えば、フレームワークなしで高性能なAPIを構築できます。

本記事では、GoのHTTPリクエスト処理について「基本・実装・実務で使えるパターン」を解説します。


HTTPリクエストとは?

クライアント(ブラウザ・アプリ)からサーバーへの要求です。

👉 主なメソッド

  • GET(取得)
  • POST(送信)
  • PUT(更新)
  • DELETE(削除)

基本の書き方

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

👉

  • w → レスポンス
  • r → リクエスト情報

GETパラメータ取得

name := r.URL.Query().Get("name")

👉 URL:?name=tomoya


POSTデータ取得

r.ParseForm()
name := r.FormValue("name")

JSONリクエスト処理

type User struct {
Name string `json:"name"`
}

var user User
json.NewDecoder(r.Body).Decode(&user)

レスポンス返却(JSON)

w.Header().Set("Content-Type", "application/json")
json.NewEncoder(w).Encode(user)

実務で重要なポイント

✔ エラーハンドリング

if err != nil {
http.Error(w, "エラー", http.StatusBadRequest)
return
}

✔ メソッド分岐

switch r.Method {
case "GET":
// 処理
case "POST":
// 処理
}

✔ ヘッダー取得

token := r.Header.Get("Authorization")

実務での応用

  • REST API
  • 管理画面
  • 外部API連携
  • 認証処理

👉 あなたなら👇
👉「口コミブースターPRO」のAPI処理に直結


💡 結論

👉
「HTTPリクエスト処理=Web開発の核心」

コメント

タイトルとURLをコピーしました