WebResource
モジュールパス: NodeJS/alier_sys/WebResource.js
概要
このクラスは Node.js 上で動作するサーバアプリケーション上のリソースをクライアントに提供するための 具象クラス です。
WebResource
のインスタンスは、完全一致または前方一致のパスのパターンに対して、一対一の対応を持ちます。互いに重複するパターンに対して複数の WebResource
インスタンスを同時に利用することはできません。
このクラスでは
GET
に対応するメソッドが定義されています。
コンストラクタ
構文
new WebResource(o) => WebResource
引数
-
o
:object
以下のプロパティを持つオブジェクトです:
-
path
:string
WebEntity
を参照してください。 -
authProtocols
:AbstractAuthProtocol[]
|null
WebEntity
を参照してください。 -
contentType
:string
既定のコンテンツ形式 (Content-Type) を表す文字列です。対象の
WebResource
のプロパティcontentType
を決定します。 -
allowedContentTypes
:Iterable<string>?
コンテンツ形式の集合を表す列挙可能オブジェクトまたは
null
です。対象のWebResource
のプロパティallowedContentTypes
を決定します。この引数は省略可能です。列挙可能オブジェクトを指定した場合、対象の
WebResource
が指すリソースに対するリクエストについて、その Accept リクエストヘッダとして許されるコンテンツ形式として、列挙可能オブジェクトに含まれるコンテンツ形式、およびo.contentType
で指定したコンテンツ形式のみ許可される。null
を指定した場合、o.contentType
に指定したコンテンツ形式のみが許可される。 -
target
:string
|object
対象のファイルパスまたはリソース取得を行うオブジェクトです。
o.target
が文字列の場合、WebResource
を介して公開する対象となるファイルのパスとして扱われます。o.path
がワイルドカードを含まない単一のパスである場合、o.target
はそれに対応する単一のファイルを指すファイルパスである必要があります。o.path
がワイルドカードを含む場合、o.target
はワイルドカードで示されるサブディレクトリおよびファイル名に対応するファイルを含むルートディレクトリのパスである必要があります。warningラベルには現状は対応していません
o.target
がオブジェクトの場合、以下のメソッドを実装している必要があります。get: ( requestedPath : string, requestDescriptor: ({ contentType: string, first: string[], last: string[], params: { [param_name: string]: string } }), ) => string | Uint8Array
このメソッドは
get()
の呼び出しの中で使用されます。呼び出しに成功した場合、返値はget()
が返すオブジェクトのプロパティbody
に設定されます。
-
例外
TypeError
- 引数
o.contentType
が文字列でなかった場合。 - 引数
o.contentType
が MIME 形式のコンテンツタイプでなかった場合。 - 引数
o.allowedContentTypes
が非null
オブジェクトだが列挙可能でなかった場合。 - 引数
o.allowedContentTypes
の成分のいずれかが文字列でなかった場合。 - 引数
o.allowedContentTypes
の成分のいずれかが MIME 形式のコンテンツタイプでなかった場合。
- 引数
メソッド
継承するメソッド
基底クラス WebEntity
から以下を継承しています:
getAllowedType()
- 与えられたコンテンツ形式が許可されているか検査し、許可されている場合は与えられたコンテンツ形式に適合する具体的なコンテンツ形式を返します。
get()
- リソースをいずれかの要求されたコンテンツ形式で配信します。
プロパティ
継承するプロパティ
基底クラス WebEntity
から以下を継承しています:
contentType
既定のコンテンツ形式を表す文字列です。
型
string
詳細
この値は、コンストラクタ引数 o.contentType
によって設定されます。
allowedContentTypes
コンテンツ形式のリストを与える列挙可能オブジェクトです。
型
Iterable<string>
詳細
この値は、コンストラクタ引数 o.allowedContentTypes
として与えられたコンテンツ形式を列挙します。