HTTP・Web レッスン6
JSON API
encoding/jsonとnet/httpを組み合わせてJSON APIを構築しましょう。
JSON APIの基本
GoでJSON APIを構築するには、encoding/json でデータをシリアライズし、Content-Type ヘッダーを設定してレスポンスを返します。
json.NewEncoder(w).Encode(data)— JSON書き込みjson.NewDecoder(r.Body).Decode(&data)— JSONの読み取りw.Header().Set("Content-Type", "application/json")
JSONレスポンスの返却
json.NewEncoder で構造体を直接レスポンスに書き込みます。
Goエディタ
リクエストボディのパース
json.NewDecoder でリクエストボディのJSONをデコードします。
Goエディタ
エラーレスポンスの返却
APIエラーも統一されたJSON形式で返すのがベストプラクティスです。
Goエディタ