symfony 3では、内部サーバエラーなしで例外を生成することは可能ですか?エラーなしのsymfony 3の例外500
この例外(データベースに追加)で何かアクションを実行したいが、アプリケーションの実行を停止しないでください。
symfony 3では、内部サーバエラーなしで例外を生成することは可能ですか?エラーなしのsymfony 3の例外500
この例外(データベースに追加)で何かアクションを実行したいが、アプリケーションの実行を停止しないでください。
あなたがしたいことは、単純にcatch
例外ではなく、ハンドル(あなたの場合:ログ)が見つからないと仮定します。例外。
これは一般的なシナリオであり、したがってin the cookbookと説明されています。基本的に、 "kernel.event_listener"イベントのサービスとして登録するイベントリスナークラスを作成します。
私はカスタムビルド例外を生成していたので、これも苦労しましたが、Symfonyが何をしても、httpステータスが500になりました。制御された方法でエラーを処理していました。それはユーザにメッセージだったので、ステータス200の応答のほうが多かった。
$event->setResponse(new Response(json_encode($returnArray), 200));
しかし、私はそれが動作ヘッダーを追加した場合、symfonyはこの後、ヘッダを探し、それを尊重:
はとにかく私は、これは動作しませんでしたことがわかりました。あなたの代わりに/例外/ HttpExceptionを使用する場合、ヘッダがなければsymfonyはちょうど
$event->setResponse(new Response(json_encode($returnArray), 200, array('X-Status-Code' => 200)));
私はまだ、この例外事に新しいので、私がやっている何かが間違っているなら、私に知らせますが、500を割り当て、そのヘッダーは私の問題を解決しました。
例外を「キャッチ」している限り、問題はどうなっているのでしょうか。 –