問題タブ [httpexception]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 独自のHttpExceptionをオーバーライド、拡張、またはロールしますか?
応答の本文に何が含まれるかを指示できるように、Http例外を制御したいと思います。標準をスローしHttpException(404, "not found");
てからフィドラーを使用すると、404ステータスコードが設定されていることがわかりますが、応答本文に押し込まれたこのゴミのhtmlがすべてあります。
HttpExceptionクラスをオーバーライドまたは拡張して、独自のコンテンツを応答本文に挿入できるようにする方法はありますか?
HttpExceptionがExternalExceptionクラスを拡張するように、私は自分自身を実装しようとしましたCustomHttpException
が、それをどのようにカットしても、システムは常に同じ標準htmlで本文に500エラーをスローします。
何か助けはありますか?
c# - ASP.NET でカスタム HTTP 401 無許可ページを強制する
私は、Windows認証を利用する(より広いインターネット用ではなく)職場での内部使用のためのWebアプリケーションを作成しました-ASP.NETは、Windowsに現在の資格情報のセットを問い合わせます。保護されたページの Page_PreInit から呼び出された認証メソッドは、設定した AD グループにユーザー名が見つからない場合、401 エラーをスローします。
HttpExceptionをスローすることから Earlz の CustomErrorsFixer を実装すると、常に HTTP 500 エラーが返されますか? 私も500秒しか返ってこなかったからです。カスタム エラー ページが機能するようになりました。
Visual Studio 開発サーバーでローカルに開発しているときに、アクセスできない場合は、401 エラー ページに直接アクセスすることがわかりました。でも!サイトを IIS サーバーに公開すると、ユーザーがアクセス権を持っていない場合、Windows のユーザー名/パスワード プロンプト(XP の見苦しい小さなプロンプト) が表示されます。これは、別のドメインにログオンしているユーザーに正しい資格情報を入力する機会を与えるため、実際には非常に便利です。
この段階で、パスワード プロンプトが表示されたときに、ユーザーが [キャンセル]または[エスケープ]を押すと、カスタム 401 ページに移動し、アクセスを要求する方法が示されます。ただし、ユーザー名とパスワードを入力しようとすると、デフォルトで間違ったドメインになり、資格情報が正しくない場合、デフォルトの IIS 401 ページが表示されますが、これは避けたいと思っています。3 番目のシナリオ - 正しい資格情報を入力すると、3 回尋ねられ、カスタム エラー ページが表示されます。
そのため、ユーザーが「認証」されている場合はカスタム 401 ページが表示され、認証されていない場合は標準の IIS ページが表示されます。
ただし、ほとんどの人は、ユーザー名/パスワード ボックスでプロンプトが表示されたときに、ドメインを指定せずにユーザー名/パスワードを入力するだけであることに気付きました。これは最終的に正しくないため、非カスタム IIS 401 ページに送信されます。これを解決する方法を知っている人はいますか?アクセスを要求する必要があるグループを確認するために、カスタム 401 ページを表示する必要があるため、非常に面倒です。
問題が発生した場合、私たち全員が使用しているブラウザーは、XP では IE8、Windows 7 では IE9 です。コードを投稿する必要がある場合はお知らせください。
c# - Application_Error から http 例外 (Unauthorized) をスローします
グローバル asax Application_Error からこの行をスローしようとしています
しかし、何らかの理由で、ブラウザーで 401 ではなく 200 が表示されます。その理由はわかりますか?
アップデート:
symfony - Symfony2 HttpException(422、'メッセージ')が機能しない
私の問題は次のとおりです。
throw new HttpException(422, "some message")
コントローラでは動作しません。
ただし、400(など)throw new HttpException(404, "some message")
と同様に機能します
422 HTTPステータスコードHttpException
でをスローできないのはなぜですか?
しようとすると、次のデバッグ情報を含む[200]応答が返されます。
致命的なエラー:キャッチされない例外「ErrorException」とメッセージ「注意:未定義のオフセット:422のapp \ cache \ dev\classes.php行3079」のvendor\symfony \ src \ Symfony \ Component \ HttpKernel \ Debug\ErrorHandler.phpオンライン67
(!)ErrorException:注意:未定義のオフセット: app \ cache \ dev\classes.phpの422行3079行のvendor\symfony \ src \ Symfony \ Component \ HttpKernel \ Debug\ErrorHandler.phpの67行
(カウントする場合はFOSRESTBundleを使用します...そしてもちろんキャッシュをクリアしました)
c# - HttpExceptionをキャッチするのは良い考えですか?
output.aspxページに次のエラーが表示されることがあります。
例外の詳細:System.Web.HttpException:リクエストがタイムアウトしました。
ソースエラー:
現在のWebリクエストの実行中に、未処理の例外が生成されました。例外の発生源と場所に関する情報は、以下の例外スタックトレースを使用して識別できます。
スタックトレース:
[HttpException(0x80004005):リクエストがタイムアウトしました。]
この例外をキャッチするのは良い考えですか?output.aspx.csにPage_Loadがあり、その関数がRunTable()を呼び出すので、どこでそれを行いますか。その関数のコンテンツの周りにtrycatchブロックを配置する必要がありますか?
c# - HTTP ヘッダーが送信された後、Windows 認証サーバーがステータスを設定できない
私は C# n 層アプリケーションを持っています。通常はフォーム認証を使用し、すべて正常に動作しますが、Windows で認証を設定しようとすると、いくつかの機会に次の例外がスローされ始めました (主に管理で、たとえば、ユーザーを編集しようとすると、クライアントはサーバーを呼び出してユーザーの詳細を呼び出します)。 Internet Explorer ではまったく発生していません。Firefox と Chrome では、毎回スローされます。
何がうまくいかないのか、それを修正する方法についてアドバイスをお願いします。ありがとう
c# - 一部のパスで VirtualPathUtility ToAbsolute から HttpException が発生するのはなぜですか?
VirtualPathUtility.ToAbsolute
などのアプリ相対パスを などの~/MyPage.aspx
アプリケーション絶対パスに解決するために使用しようとしてい/MySite/MyApp/MyPage.aspx
ます。ただし、パスによってHttpException
は、「有効な仮想パスではありません」というメッセージが表示されます。例:
どうしたの?
asp.net - ASP.NET 出力を書き換えるときの「応答フィルターの無効な使用」
「正常に」機能する非常に基本的な ASP.NET 応答フィルターがあります。これを使用して、静的リソースのドメインを置き換えます。
コントローラーの私のコードは次のようになります。
そして、書き換えフィルター自体:
私のサイトの特定のページ (韻や理由がまだ見つかりません) で、おそらく 90% の確率で "HTTP Web Exception: Invalid use of response filter" が表示されます。12 回更新するだけで正しい出力が得られますが、再度更新すると例外が表示されます。
応答フィルターで何か間違ったことをしていますか?
asp.net - ASP.NETHttpExceptionErrorCodeを取得する方法
特定のHttpException、つまり「リモートホストが接続を閉じました。エラーコードは0x800704CDです」をキャッチして処理しようとしています。
私の意図は、HttpExceptionのCatchを関連するTryブロックに追加し、生成されたエラーコードをテストすることです。サンプルコード:
しかし、例外(つまり、「0x800704CD」)に表示されるエラーコードをHttpExceptionオブジェクトから抽出する方法を理解できません。ErrorCodeプロパティの整数値を16進数に変換すると、「800704CD」が返されるため、このコードがどのように生成されるかがはっきりとわかりません。
ありがとう。
asp.net-mvc - MVC REST API ステータス コード 500 と JSON が返される
MVC3 で REST API を開発しています。検証に問題がある場合はいつでも、エラーを説明する 500 + json
をスローしたいと考えています (json は検証されていないフィールドのリストである可能性があります)。問題は、json が( )
全体を保持する html 内に返される
ことです。このケース: https://stackoverflow.com/a/4707762/936651実際には html であり、クライアントにクリーンな json を提供しますが、500 エラーも削除します。HttpExeption
Server Error in '/' Application.
filterContext.ExceptionHandled = true;