no versions found for AlierOnNodeReferences / web/webresource_get / en

WebResource: get()

リソースをいずれかの要求されたコンテンツ形式で配信します。

構文

webResource.get(path, ...acceptedTypes) => Promise<({ contentType: string, body: string | Uint8Array })>

引数

  • path: string

    リクエストされたパスを表す文字列です。

  • accpectedTypes: ...{ value, params }

    リクエストに設定された Accept リクエストヘッダを表すオブジェクトの配列です。配列 acceptedTypes の各成分 acceptedType は以下のプロパティを持ちます:

    • value: string

      Accept リクエストヘッダの値です。クライアントが返送を要求するコンテンツ形式を表します。

    • params: ({ [param_name: string]: string })?

      Accept リクエストヘッダのパラメタです。通常、設定されない (null) か、Q 値を表すプロパティ q の設定されたオブジェクトが与えられる。

      もしリクエストに Accept リクエストヘッダが設定されなかった場合、つまり acceptedTypes が空の配列だった場合、プロパティ contentType のコンテンツ形式が選ばれます。

      acceptedTypes が空でない場合、allowedContentTypes に一致する最初のコンテンツ形式が選ばれます。

      acceptedTypes の成分の順序は、Q 値が設定されていなければ Accept リクエストヘッダの定義順に従い、 Q 値が設定されていれば Q 値に従って並び変えられます。

返値: { contentType, body }

コンテンツ形式とレスポンスのボディです。

  • contentType: string
  • body: string | Uint8Array

例外

  • SyntaxError
    • path が対象の [WebResource.path][path] に一致しなかった場合。
  • TypeError
    • path が文字列でなかった場合。
    • acceptedTypes のいずれかの成分が非 null オブジェクトでなかった場合。
    • acceptedTypes のいずれかで成分のプロパティ value を持たなかったか、その値が文字列でなかった場合。
  • UnsupportedMediaTypeError
    • 要求されたコンテンツ形式を対象の WebResource が許可していなかった場合。
  • InternalServerError
    • 返値が文字列でも Uint8Array でもなかった場合。

解説

どのコンテンツ形式が採用されるかはプロパティ allowedContentTypes によって決まります。

allowedContentTypes のいずれかが要求されたコンテンツ形式に合致すれば、そのコンテンツ形式のボディを送り返します。

いずれも一致しなければ 415 Unsupported Media Type エラーを送り返します。