17

奇妙なエラーが発生します。Fiddlerが開いているときに完全に機能するスクリプトを設定しました。httpwebrequestを使用してWebサイトからレポートをダウンロードし、すべてが正常に機能します。

ただし、 Fiddlerが開いている場合にのみ機能しますか?フィドラーが機能していないとき、「リクエストタイムアウトの問題」が発生します

これを修正してASP.NETMVCアプリで動作させる方法を知っている人はいますか?

ありがとう

編集:応答をありがとう!プロキシについて-このスクリプトをWindowsAzureでテストしたかったのですが-デフォルトのプロキシ設定をセットアップする方法についてはほとんど混乱していませんか?

4

6 に答える 6

12

検索者のために、ここに別の考えがあります。ウェブサイトをロボットで操作するアプリケーションがあります。アプリケーションは、.Net4.0でHttpWebRequestとHttpWebResponseを使用します。2つまたは3つのGETが成功した後、次は一貫してロックします。別の投稿では、HINTERNETを適切に閉じないと、同じホストへの並列接続の数に制限があるため、アプリケーションが同じホストへの後続のGETでブロックする可能性があることが示唆されました。これが隠れて起こっているのかどうかはわかりませんが、私は戻ってどこで物事を閉じることができるかを判断しようと思いました。

コード内のすべてのHttpWebResponseオブジェクトを閉じたところ、問題は解決しました。このことから、Fiddlerが問題をマスクする理由はわかりませんが、実際にそうなりました。クローズを追加する前に、シーケンス内の特定のリクエストは一貫してタイムアウトします。応答を閉じた後、それはすべてクリアされ、Fiddlerを介してプロキシせずに実行できました。

于 2011-04-01T03:48:22.620 に答える
3

@ProfVonLemongargleが提案したようにすべてのHttpWebRequestオブジェクトを閉じると、私が抱えていた同じ問題が修正されました。

Fiddler はサーバーへの接続を閉じている可能性が高いため、アプリがプロキシとして使用している場合、同時接続の制限はマスクされます。追加情報については、このスレッドを参照してください: 2 回目の呼び出しで HttpWebRequest がタイムアウトする

于 2012-04-20T06:23:45.970 に答える
2

Fiddlerはプロキシとして機能することに注意してください。Fiddlerの実行中にアプリケーションが機能するが、それ以外の場合は機能しない場合は、デフォルトのプロキシ設定に問題があることを示している可能性があります。インターネットオプションを開き(おそらくIEを介して)、プロキシ設定を確認します。特に、スクリプトを使用して構成しているかどうかに注意してください。

実際に私に起こったのですが、非常にありそうもない可能性について言及します。自分のマシンに特定のアンチウイルス製品をインストールしました。何らかの理由で、サブスクリプションの有効期限が切れたと思われました。その結果、ソフトウェアが実行されなかったため、インターネットへのアクセスが許可されているプログラムのリストを更新できませんでした。有効期限後にインストールしたプログラムは、Fiddlerが実行されていないと機能しません(Fiddlerは有効期限が切れる前にインストールされたため、「良好」リストに含まれていました)。有効期限後にインストールされた他のプログラムはすべて「不良」リストに含まれていました(デフォルト)。

于 2009-06-23T01:39:27.193 に答える
1

HTTPSで実行していますか?その場合、コードがリモートサイトの証明書を信頼しない可能性があり、Fiddlerがデータをアプリに渡す可能性があります。エラーメッセージと、この問題を再現する最小限のコードを送信してください。

于 2009-06-23T01:42:05.550 に答える
1

古いチェーンですが、私たちのコードで同じ問題を発見しました。これは、javascript に console.log コマンドが残っていたためです。これにより、JavaScript コードがブロックされました。

于 2012-04-25T15:23:48.467 に答える