WebResource: get()
リソースをいずれかの要求されたコンテンツ形式で配信します。
構文
webResource.get(path, ...acceptedTypes) => Promise<({ contentType: string, body: string | Uint8Array })>
引数
-
path:stringリクエストされたパスを表す文字列です。
-
accpectedTypes:...{ value, params }リクエストに設定された Accept リクエストヘッダを表すオブジェクトの配列です。配列
acceptedTypesの各成分acceptedTypeは以下のプロパティを持ちます:-
value:stringAccept リクエストヘッダの値です。クライアントが返送を要求するコンテンツ形式を表します。
-
params:({ [param_name: string]: string })?Accept リクエストヘッダのパラメタです。通常、設定されない (
null) か、Q 値を表すプロパティqの設定されたオブジェクトが与えられる。もしリクエストに Accept リクエストヘッダが設定されなかった場合、つまり
acceptedTypesが空の配列だった場合、プロパティcontentTypeのコンテンツ形式が選ばれます。acceptedTypesが空でない場合、allowedContentTypesに一致する最初のコンテンツ形式が選ばれます。acceptedTypesの成分の順序は、Q 値が設定されていなければ Accept リクエストヘッダの定義順に従い、 Q 値が設定されていれば Q 値に従って並び変えられます。
-
返値: { contentType, body }
コンテンツ形式とレスポンスのボディです。
contentType:stringbody:string|Uint8Array
例外
SyntaxErrorpathが対象の [WebResource.path][path] に一致しなかった場合。
TypeErrorpathが文字列でなかった場合。acceptedTypesのいずれかの成分が非nullオブジェクトでなかった場合。acceptedTypesのいずれかで成分のプロパティvalueを持たなかったか、その値が文字列でなかった場合。
UnsupportedMediaTypeError- 要求されたコンテンツ形式を対象の
WebResourceが許可していなかった場合。
- 要求されたコンテンツ形式を対象の
InternalServerError- 返値が文字列でも
Uint8Arrayでもなかった場合。
- 返値が文字列でも
解説
どのコンテンツ形式が採用されるかはプロパティ allowedContentTypes によって決まります。
allowedContentTypes のいずれかが要求されたコンテンツ形式に合致すれば、そのコンテンツ形式のボディを送り返します。
いずれも一致しなければ 415 Unsupported Media Type エラーを送り返します。