API call (J)
あとは、REST API に実際にプログラムからアクセスしてみましょう。 というっても、基本Web API の利用 と基本同じです。
Java + Retrofit の場合
鎌田の方で準備したのは、以前紹介した Retrofit を用いて、Firebase に User オブジェクトデータを保存・取得するだけのプログラムです。
先ほどに引き続き fireblog/users
以下にデータを置くようにしています。
git repository上に配置(konanU.net.fbRealtimeDB)しておきます。 SampleCaller の main method を実行してもらうのですが、12行目のURLについては、皆さんが使うデータベースの URL を入れてください。
プログラム自体は、以前とあまり変わらないので、説明はなしです。また、同期呼出しと呼ばれる、関数呼び出しをしたら相手から結果が返ってくるまで待つスタイルで呼び出しをおこなっています。
練習問題
-
まずは、自分で firebase 上にデータベースを準備しましょう。
-
コンソール画面を用いたデータ登録、Web API を用いたデータ登録&参照を試してみましょう。
-
上記プログラムを動作させて、動作確認を取りましょう。
-
上記プログラムでは PUT, GET, POST メソッドを準備しましたけど、利用サンプル側に POST は入っていません。自分で追加して試しましょう。
なお、POST の結果は
{ "name": ..... }
という形式でかえり、....
に登録時のキーが登録されています。
Java では、
class PostResult {
String id;
}
にmapping してあり、id
にIDが格納されています。