AbstractAuthProtocol: getChallenge()
チャレンジレスポンスのためのヘッダパラメタを取得します。
この関数は非同期関数です。
構文
authProtocol.getChallenge(reason) => Promise<string>
引数
-
reason:object認証に失敗した理由です。
返値: Promise<string>
WWW-Authenticate レスポンスヘッダに付与するパラメタの文字列です。
解説
関数 getChallenge() は WebEntity::getChallenge() 関数の中で呼び出されます。
WebEntity のコンストラクタ引数 o.authProtocols には複数の AbstractAuthProtocol インスタンスを含めることができるが、どの認証プロトコルの実装が使われるかは、Authorization リクエストヘッダのスキーム名が認証プロトコルのプロパティ scheme に一致するかどうかで判断されます。
スキーム名が一致したプロトコルに対して、そのプロトコルが実装する関数 getChallenge() が呼び出されます。
また、リクエストが Authorization リクエストヘッダを持っておらず、スキーム名によるプロトコルの照会ができない場合は WebEntity::getChallenges() が呼び出されます。WebEntity::getChallenges() は対象の WebEntity がサポートするすべての認証プロトコルに対して getChallenge() を呼び出します。