RESTリクエストについて
RESTリクエストでは次の構文がサポートされています:
URI | リソース (入力) | /? または &{filter} (出力) |
---|---|---|
http://{servername}:{port}/rest/ | {dataClass} | $filter, $attributes, $skip, $method=...... |
{dataClass}/$entityset/{entitySetID} | $method=... | |
{dataClass}({key}) | $attributes | |
{dataClass}:{attribute}(value) |
RESTリクエストには、URI とリソースが必ず含まれていなければなりませんが、返されるデータをフィルダーする出力パラメーターの使用は任意です。
すべての URI と同様に、先頭パラメーターは "?" に続けて指定し、それ以降のパラメーターは "&" で区切ります。 例:
GET /rest/Person/?$filter="lastName!=Jones"&$method=entityset&$timeout=600
曖昧さ回避のため、値は引用符内に書くことができます。 たとえば、上の例では名字 (lastName) の値を単一引用符内に書けます: "lastName!='Jones'"。
パラメーターを利用することで、4Dプロジェクトのデータクラスのデータを操作できます。 GET
HTTPメソッドを使ってデータを取得する以外にも、POST
HTTPメソッドを使ってデータクラスのエンティティを追加・更新・削除することが可能です。
JSON の代わりに配列形式でデータを取得するには $asArray
パラメーターを使います。
RESTステータスとレスポンス
各 RESTリクエストに対し、サーバーはステータスとレスポンス (エラー付き、またはエラー無し) を返します。
リクエストステータス
RESTリクエストをおこなうと、レスポンスとともにステータスが返されます。 主なステータスをいくつか紹介します:
ステータス | 説明 |
---|---|
0 | リクエストは処理されませんでした (サーバー未起動の可能性) |
200 OK | リクエストはエラーなく処理されました |
401 Unauthorized | 権限エラー (ユーザーのアクセス権限を確認する必要があります) |
402 No session | セッションの最大数に達しています |
404 Not Found |