1. HOME
  2. ブログ
  3. IT技術
  4. 【第5回】Go言語(Golang)入門~REST API実装編~

【第5回】Go言語(Golang)入門~REST API実装編~

第5回~Go言語(Golang)入門~

秋山笹川先生

(株)ライトコードの笹川(ささがわ)です!

前回は、RESR APIを構築するための機能を実装しました。

今回は、POSTで受け取った値をFirestoreへ追加し、追加されたデータをレスポンスとして返す実装をしてみたいと思います。

前回の記事はこちら

こちらの記事もオススメ!

Firestoreへのデータ追加の実装を作ってみよう!

まずは、Firebaseの初期化処理を実装しようと思います。

前回のFirestoreでのデータ操作をした際の記述に対して、戻り値を用意してます。

初期化処理は共通処理となるので、メソッド化しておいたほうが効率が良さそうです。

初期化処理だけで実行をしても意味がないので、このまま、データを追加する処理をしてからclientをクローズするまでを実装します。

Firestoreへのデータ追加処理

Firestoreへのデータ追加処理は、これで完了です。

それでは、リクエストを受け取って、Json をパースして、Firestore へのデータ追加処理を呼び出してみましょう!

これで実行してみます。

実行

リクエストのヘッダーに Content-Type: application/json  を入れて、下記の Json を body にセットしてからリクエストしてみましょう!

curl だと下記のようなコマンドです。

今の実装だと追加に失敗しない限りは、リクエストの body に入れた Json を返すようにしています。

笹川は、Postman を利用して実行してみました。

無事に成功です!

データを追加成功のレスポンスとしてFirestoreのデータを返してみよう!

データ追加のあとに、データ読み取りの処理を入れて、Json で返します。

実装

それでは、実装してみましょう!

想定よりも複雑な処理になりました。

データを読み取る実装自体は、以前の記事でも実装したので説明を割愛します。

今回のつまづきポイントは、Firestoreから受け取った値がmap型であり、それをJson形式で返すために試行錯誤した点です。

確認

追加処理を実装した際に test1 のユーザーは追加済みなので、test2 のユーザーを追加して確認してみます。

curl だと下記のリクエストで確認できます。

レスポンスは、test1test2 の情報が下記のように配列で戻ってきたら成功です!

毎度のごとくPostmanで確認してみます。

無事に成功しました!

第6回へつづく!

今回は、REST APIとしてGo言語(Golang)からFirestoreのデータを追加してみました。

1つ1つの実装は難しくないのですが、組み合わせるとどうしても複雑化していってしまいますね。

Go言語(Golang)は、パッケージ分割などでフィルや処理を分割できます。

そのため、整理しながら開発していくのが良いように思います。

今後は、「実際にデプロイ」してみたり、「Androidアプリ等とのデータのやり取り」をしてみたいなと思います!

今回作成したgoファイルは、こちらのリポジトリにて管理しております。

Go言語でのシステム開発依頼・お見積もりはこちらまでお願いします。
また、Go言語を扱えるエンジニアを積極採用中です!詳しくはこちらをご覧ください。

次回の記事はこちら

オススメのGo入門本

Goプログラミング実践入門 標準ライブラリでゼロからWebアプリを作る
Goプログラミング実践入門 標準ライブラリでゼロからWebアプリを作る

 

こちらの記事もオススメ!

第1回の記事はこちら

関連記事

採用情報

\ あの有名サービスに参画!? /

バックエンドエンジニア

\ クリエイティブの最前線 /

フロントエンドエンジニア

\ 世界を変える…! /

Androidエンジニア

\ みんなが使うアプリを創る /

iOSエンジニア