2011-07-14 4 views
2

C#.NETには、非常に頻繁にASMX Webサービスに接続するデスクトップアプリケーションがあります。このWebサービスに非常に頻繁に接続しているバックグラウンドワーカーが2人います。アプリケーションには、ASP.NET Webサイトから2つの異なるWebページを読み込む2つのWebブラウザコントロールもあります。これらのページには、一定のAJAXリクエストが行われています。Http Web Requestヘッダーに「Connection」ではなく「Proxy-Connection」が含まれることがあると混乱したり、原因となるのはなぜですか?

問題:いくつかのリクエスト - ウェブの参照番号& XMLHttpのブラウザーページが両方とも停止することがあります。私はfiddlerを使用してチェックし、これらの要求がhttpステータス502の応答を取得し、実際にTCP IP接続で失敗したことがわかりました。私が特定した問題のパターン/原因は、アプリケーションからのすべてのhttp Webリクエストに通常 "Connection"ヘッダーが含まれているということですが、代わりにいくつかのリクエストには "Proxy-Connection"ヘッダーがランダムに含まれています。そして、 "Proxy-Connection"ヘッダーでこれらの要求に対して常に502エラーが発生することが確実です。

これが原因であれば、通常の「Connection」ヘッダーの代わりに「Proxy-Connection」ヘッダーを送信するリクエストが発生する原因は何ですか?

更新日:私はこれをいつもテストし、監視しているので、今私は新しい発見があります。アプリケーションが実行中で、フィドラーがログをキャプチャしている間に、リクエストヘッダーの「Proxy」のログをランダムに検索します。「1つのセッションに「Proxy」が含まれています」というメッセージが表示されますが、プロキシ '' 「1つのセッションに「プロキシ」が含まれていた」と言ったときに、選択したログをすばやく保存しましたが、保存したログを後で確認すると、リクエストヘッダーに「プロキシ」は含まれず、ステータスも200(502ではありません)です。現在、ライブログをキャプチャしているフィドラーを試しているうちに、リクエストのほぼすべて(またはほとんど)が実際には「Proxy-Connection」ヘッダーで始まり、リクエストが完了するまでに「Connection」に変更されています。それで、これは完了しないリクエストが "Proxy-Connection"ヘッダを保持していますか?

ヒント?私は混乱しており、少なくともProxy-Connectionヘッダーが502エラーを引き起こしているかどうかという事実を少なくとも明らかにしようとしていますか?または、502エラーがProxy-Connectionヘッダーを引き起こしていますか?

+0

HTTMプロトコルのいくつかの実装にエラーがあるように見えます。ここのサーバーの一覧を参照してください。http://www.http-stats.com/header/Proxy-Connection – sll

答えて

1

あなたとWebサーバーの間にプロキシが存在する必要があります。 http://www.checkupdown.com/status/E502.htmlを見ると、通常、プロキシまたはゲートウェイが宛先サーバーに接続できないため、HTTP 502エラーが発生します。通常、これは接続の問題や負荷の問題が原因です(ISPからの透過的なプロキシ経由で実行している場合は、独自のルータを実行している場合はおそらく接続性があります)。

エラーを止めるためにできることはあまりありません。このエラーをキャッチして再試行するコードを記述する必要があります。

は、プロキシ接続のヘッダが502エラーを引き起こしているかどうか:

だからあなたの質問に答えるには?または、502エラーがProxy-Connectionヘッダーを引き起こしていますか?

Proxy-Connectionヘッダーは、Webサービスに接続する際にエラーが発生したプロキシまたはゲートウェイを示しています。それ自体は502エラーの原因ではなく、502エラーはProxy-Connectionヘッダーの原因ではありません。

関連する問題