問題タブ [httpcontext]
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.
asynchronous - 非同期 HttpWebRequests と null の HttpContext.Current.Response/Request オブジェクト
Web サービスに大きく依存する Web アプリケーションがあります。サービスに関するすべての処理は、AddOnPreRequestHandlerExecuteAsync を使用して非同期で行われます。とにかく、ほとんどの呼び出しは問題なく動作しますが、非同期サービス呼び出しから戻って endprerequest で null の HttpContext.Current.Response/Request オブジェクトを見つけるものもあります。両方のオブジェクト (Response と Request は、失敗した呼び出しの beginprerequest で利用可能/null ではなく、他の呼び出しの endprerequest で機能します)。
誰かが同様に遭遇したり、問題が何であるかについて推測したりしますか?
更新:解決策を見つけたようです.Init(これがすべて発生するHttpModuleの)でHttpApplicationの変数を作成すると、その変数からHttpContextにアクセスできます。
更新: begin 関数で HttpApplication または HttpContext.Current を渡すと、同じ問題が発生します。非同期呼び出しの「状態」の一部として渡されると、begin 関数では有効であっても、end 関数では null になります。
更新: ログを追加したところ、作成している非同期呼び出しが正しく返され、結果が存在し、コールバック関数が適切に呼び出されていることがわかりました。
asp.net-mvc - ASP.NET MVC 1 で HttpContextBase から HttpContext オブジェクトを取得するにはどうすればよいですか?
私はいくつかの WebForms/MVC に依存しないツールを使用しHttpContext
ており、オブジェクトへの参照を指定してインスタンスを取得する必要がありHttpContextBase
ます。HttpContext.Current
これは非同期でも動作する必要があるため、使用できません(非同期リクエスト中にHttpContext.Current
戻ります)。null
私は知ってHttpContextWrapper
いますが、間違った方向に進んでいます。
c# - IIS 7 でのみオブジェクト参照エラーを引き起こす HttpContext
私は最近、実際のサイトと同じサーバー上に個人の Web サイトの新しいインスタンスをセットアップしました。新しいインスタンスは「最新」の構成であるため、現在取り組んでいる最新のビルドの新機能がすべて含まれています。最新のビルドでは、ターゲット フレームワークを 2.0 から 3.5 に切り替えました。これは、コンパイルされたアイテムと同じくらい大きな変更のみです。
すべてのメンバー ページ、その他のページ、および一部のユーザー コントロールで、これら 2 つの項目のいずれかまたは両方を呼び出しましたが、それぞれが失敗しObject reference not set to an instance of an object
、エラーが発生しています。しかし、すべてのページではありません!
スタック トレースは次のとおりです。
ただし、これは Server 2008 の IIS 7 でのみ発生していることに注意してください。サイトは Visual Studio 2008 から完全に機能しています。IIS のメイン Web サイトをこのディレクトリに接続しても、同じことが行われます。これはどのように発生する可能性があり、何が原因である可能性がありますか?
キックのために、Target Framework を 2.0 に戻しましたが、それでも同じ問題が発生します。また、これは、メンバーページだけでなく、訪問者がログインしているかどうかに関係なく発生しているようです.
c# - elmah: HttpContext のない例外?
Application_Start でスレッドを生成し、例外をログに記録したいと考えています。がないContext/HttpContext/HttpContext.Current
ので、どうすればログに記録できますか?
現時点では、スレッドで例外をキャッチしません。書き込むErrorSignal.FromCurrentContext().Raise(ex);
と、コンテキストを null にできないというエラーが表示されます。
ダミーの HttpContext を作成できるかもしれませんが、どういうわけかうまくいかないと思います。
-編集-試してみErrorSignal.Get(new HttpApplication()).Raise(ex);
ましたが、その例外を拾っていないようです。
asp.net-mvc - Visual Studio を使用しているときに、コントローラー コードで httpcontext ユーザー情報をどのようにキャプチャしますか?
私はこの質問をしました。これにより、次を使用してユーザーをキャプチャできました。
私のコントローラーコードで。
私が抱えている問題の 1 つは、ビジュアル スタジオでテストすると、空の文字列として表示されることです。テストのためにこのフィールドを追跡したいと思います。
私のマシンのローカル ASP.net Web サーバー プロセスでこれを機能させる方法はありますか?
asp.net - HttpRequestを使用せずにホスト名を取得する
ASP.NETアプリケーションで「バックグラウンドジョブ」を実行したい(定期的に、別のスレッドとして)。また、タスクを実行するにはホスト名(DNS名またはIP)が必要です。問題は、HttpContext.Current
ここでは利用できない可能性があることです(ですNULL
)。
を使用せずにホスト名を取得する方法はありますかHttpContext.Current.Request.Url.Host
。
asp.net - Application_PreRequestHandlerExecute: null HttpContext.Current?
Application_PreRequestHandlerExecute で HttpContext.Current が null 以外になると常に想定しても安全ですか?
EDIT: ASP.NET Webフォーム(MVCではない)を想定しています。
asp.net - 非同期 HTTP ハンドラーとバックグラウンド スレッドで HttpContext を使用していますか?
ウォークスルー: 非同期 HTTP ハンドラーの作成を読んでいHttpContext
て、ハンドラー スレッドからを渡しWaitCallback
、バックグラウンド スレッドで実行される で使用していることに気付きました。のような呼び出しを行います_context.Response.Write()
。非同期作業が開始された後、ハンドラー スレッドはそれを使用しないため、これは HttpContext がスレッド セーフではないという事実に違反しないと仮定して正しいでしょうか?
また、スレッド間で HTTPContext を使用すると、HttpContext とスレッドに関する良い情報が得られます。すべての HttpContext がスレッドセーフではないか、またはのようなアイテムだけResponse
ですか? Items
読み取りモードのみの場合、複数のバックグラウンド スレッドがプロパティにアクセスできますか?
asp.net - AJAX によって呼び出される Web メソッドで使用できない HttpContext 項目
HttpContext に保存するアイテムがあります。
ページのどのメソッドからでも問題なくアクセスできます。例えば:
これはうまくいきます。
ただし、AJAX を介してページの Web メソッドの 1 つを呼び出すと、これは失敗します。
非同期呼び出しの HttpContext は、ページの HttpContext とは異なりますか?
asp.net-mvc - ASP.NET MVC : 独自の HttpContext を作成する方法
私のアイデアは、私たちのアプリで使用される内部オブジェクトのいくつかを含む独自の HttpContext を作成することでした。だから私は単に作成すると思った
次に、HttpContext プロパティをオーバーライドします。
しかし、HttpContext は仮想ではないことに気付きました。そのため、オーバーライドすることはできません。
さて、あなたは何を提案しますか?BaseController に新しいプロパティを追加しますか?
前もって感謝します!