2017-12-04 10 views
0

server.onPreHandler extメソッド内に応答ヘッダーを設定する必要があります。 2つのシナリオがありますが、ユーザーがルートのエンドポイントにAPIリクエストを送信したときにこれが必要になります。 1)成功シナリオでは、ヘッダーを設定し、ライフサイクルのライフサイクルをさらに下げるようにプロセスを進める必要があります。 2)エラーシナリオでは(ユーザーが必須フィールドを指定していない場合)、ヘッダーを設定して、情報応答ヘッダーを設定する

いずれのシナリオでも、私は応答ヘッダーを設定したいと思います。 上記の2番目のシナリオでは、reply.headers( 'x'、 'value')を使用してreply.response( 'error')を呼び出し、レスポンスヘッダーを設定することができました。しかし、第1のシナリオでは、reply.continue()を呼び出す前にrequest.response.header( 'x'、 'value)を使用してヘッダを設定しようとしていますが、レスポンスnullエラーが発生します。

私はこのようなレスポンスヘッダを変更することができるよ

おかげ ラメシュ

答えて

1

を助けてください。あなたはこの方法で試しましたか?

// at your onPreResponse ext body 
const response = request.response; 
if (request.response.isBoom) { 
    response.output.headers['x'] = 'value'; 
} else { 
    response.header('x', 'value'); 
} 
+0

こんにちは、応答をありがとうrequest.responseたちがヌルのプロパティ「isBoom」を読み取ることができません 「ヌルにisBoomを呼び出すことはできません」を取得nullであるので –

+0

うーん、もちろんonPreHandlerレベルでの応答がない 。 onPostHandlerまたはonPreResponse extポイントで作業する必要があります。 – metoikos

+0

ありがとうございます。 onPreProcess extポイントにロジックを追加して、応答ヘッダーを設定しました –

関連する問題