HTTPリクエスト

HTTPリクエストの構成要素のうち、HTTPヘッダー、HTTPメソッド、URLについて説明する。

HTTPヘッダー

以下のHTTPヘッダーを指定可能。

  • Content-Typeヘッダー

    HTTPリクエストのコンテントタイプを指定する。

  • Acceptヘッダー

    HTTPレスポンスのコンテントタイプを指定する。

  • X-Auth-Tokenヘッダー

    KeystoneのTokenを指定する。

HTTPメソッド

APIの目的によって、以下のようにHTTPメソッドを使い分ける。

  • POST リソース作成系API
  • GET リソース情報取得系API
  • PUT リソース操作系API
  • DELETE リソース削除系API

URL

URLの形式は以下のとおり。

<protocol>://<host>:<port>/<path> <params>

<protocol>
転送プロトコル(httpsを指定)
<host>
提供基盤マネージャのホスト名 or IPアドレス
<port>
ポート番号 (デフォルトは23461)
<path>
APIのパス。以下のいずれかの形式で指定する。

/<リソース種別>/

 リソース作成や情報取得時の形式(例:/l_servers/)

/<リソース種別>>/<リソースID>

特定のリソースの情報取得、属性変更、削除時の形式(例:/l_servers/100)

/<リソース種別>/<リソースID>/<操作名>

特定のリソースに固有の操作を行う場合の形式(例:/l_servers/100/start)

<params>
APIの引数。

HTTPメソッドがGET、DELETEの場合

引数はクエリに指定する。<path>の最後に?を付け、その後ろに引数を続けて指定。

引数は<label>=<value>の形式(※)で指定する。

HTTPメソッドがPOST/PUTの場合

引数はボディに格納する。HTTPヘッダーのContent-Typeの値により、引数の指定形式が異なる。

Content-Typeがapplication/x-www-form-urlencodedの場合

引数は<label>=<value>の形式(※)で指定する。

Content-Typeがapplication/xmlの場合

XML形式で引数を指定する。

省略可能な要素を省略する場合は、XMLのタグを省略すること。値のみ省略する形式は指定不可。

※<label>=<value>の指定形式は以下のとおり

<label>=<value>&<label>=<value>,…

<label> 引数名

<value> 値

省略可能な引数を省略する場合は、<label>、<value>の両方を省略すること。<value>のみ省略する形式(<label>=’’など)は指定不可。