Salesforce 認定 MuleSoft デベロッパー 無料問題 2 / 10 ・ 分野2: APIを設計する
API Designer で次の RAML を書いた。リソース /stock に get があり、responses に 200(application/json、type: stockLevel、example: {sku: "A-100", count: 12})と 404(message を持つ本文とその例)を定義している。API 実装はまだ作っていない。ドキュメントパネルで GET を開き、[Try It] から [Send] を押すと、モッキングサービスは何を返すか。
- 200 OK と、200 と 404 の例を並べた本文
- 200 OK と、型 stockLevel の定義(スキーマ)
- 200 OK と、仕様の 200 に書いたサンプルの本文
- 200 OK と、本文の無い応答(ヘッダーだけ)
正解と解説を見る
正解: C
正解の理由
モッキングサービスは API 仕様のふるまいをまねる仕組みで、仕様に定義した応答(HTTP ステータスコードとサンプルのペイロードの両方)を返す。チュートリアルの手順でも、[Try It] から [Send] を押すと、モッキングサービスが仕様をもとに作った一時的な要求 URL に要求が届き、成功すれば 200 OK とテストメッセージが返る。ここでは 200 の応答に書いた example の {sku: "A-100", count: 12} が本文になる。コードを書く前に API の動きを確かめるための仕組みである。
違う選択肢
「200 OK と、型 stockLevel の定義(スキーマ)」… モッキングサービスが返すのは、HTTP ステータスコードとサンプルのペイロードである。型 stockLevel は応答の形を決める定義で、本文として返るのは example に書いた値である。
「200 OK と、本文の無い応答(ヘッダーだけ)」… ドキュメントは、モッキングサービスがステータスコードとサンプルのペイロードの両方を返すと書く。実装が無くても、仕様の example が応答の本文になる。
「200 OK と、200 と 404 の例を並べた本文」… 返るのは送った要求に対する1つの応答で、200 の応答に書いた例が本文になる。404 の定義は、[Try It] の画面の [404] のタブで確かめるものである。
押さえどころ
[Try It] の画面では、[200] と [404] のタブで仕様に定義した応答を確かめられる。その他(…)メニューの [Response details] で、モッキングサービスのレスポンスヘッダーとリクエストヘッダーを調べると、問題の切り分けや仕様の動きの理解に役立つ。