メインコンテンツまでスキップ
バージョン: 20 R6

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データクラスが REST に公開されていないか、エンティティが存在しません
500 Internal Server ErrorRESTリクエスト処理中にエラーが発生しました

レスポンス

返されるレスポンス (JSON形式) はリクエストによって変わります。

エラーが発生した場合、その内容はレスポンスとともに返されるか、サーバーのレスポンスそのものになります。