RESTリクエストについて
RESTリクエストでは次の構文がサポートされています:
URI | リソース (入力) | /? or &{filter} (Output) |
---|---|---|
http://{servername}:{port}/rest/ | {dataClass} | $filter, $attributes, $skip, $method=...... |
{dataClass}/$entityset/{entitySetID} | $method=... | |
{dataClass}({key}) | $attributes | |
{dataClass}:{attribute}(value) |
RESTリクエストには、URI とリソースが必ず含まれていなければなりませんが、返されるデータをフィルダーする出力パラメーターの使用は任意です。
As with all URIs, the first parameter is delimited by a “?” and all subsequent parameters by a “&”. 例:
GET /rest/Person/?$filter="lastName!=Jones"&$method=entityset&$timeout=600
曖昧さ回避のため、値は引用符内に書くことができます。 たとえば、上の例では名字 (lastName) の値を単一引用符内に書けます: "lastName!='Jones'"。
パラメーターを利用することで、4Dプロジェクトのデータクラスのデータを操作できます。 Besides retrieving data using GET
HTTP methods, you can also add, update, and delete entities in a dataclass using POST
HTTP methods.
If you want the data to be returned in an array instead of JSON, use the $asArray
parameter.
RESTステータスとレスポンス
各 RESTリクエストに対し、サーバーはステータスとレスポンス (エラー付き、またはエラー無し) を返します。
リクエストステータス
RESTリクエストをおこなうと、レスポンスとともにステータスが返されます。 主なステータスをいくつか紹介します:
ステータス | 説明 |
---|---|
0 | リクエストは処理されませんでした (サーバー未起動の可能性) |
200 OK | リクエストはエラーなく処理されました |
401 Unauthorized | 権限エラー (ユーザーのアクセス権限を確認する必要があります) |
402 No session | セッションの最大数に達しています |
404 Not Found | データクラスが REST に公開されていないか、エンティティが存在しません |
500 Internal Server Error | RESTリクエスト処理中にエラーが発生しました |
レスポンス
返されるレスポンス (JSON形式) はリクエストによって変わります。
エラーが発生した場合、その内容はレスポンスとともに返されるか、サーバーのレスポンスそのものになります。