問題タブ [system.net.webexception]
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# - ターゲット マシンがアクティブに拒否したため、接続できませんでしたか?
WebService に対して HttpWebRequest を実行しているときに、次のエラーが発生することがあります。以下のコードもコピーしました。
asp.net - Asp.net HttpWebResponse - フロー制御のために WebException に依存しないようにするにはどうすればよいですか?
リクエストが 500 Server Internal Error を返すかどうかを確認する必要があります (エラーが発生することが予想されます)。私はこれをやっています:
しかし、500 内部サーバー エラーが発生すると、WebException がスローされ、アプリケーション フローを制御するために WebException に依存したくありません。これを行うにはどうすればよいでしょうか?
c# - WebRequestObject で例外を回避する
次のようにWebサイトからデータを読み取っています。
503 エラーのあるページに到達すると、次の行が表示されます。
WebException をスローします。
すべてを try/catch ブロックにラップして例外を待つ代わりに、ウェブサイトが 503 エラーを返すかどうかを確認する方法はありますか? 毎秒多くの更新を行っているため、可能であれば try/catch を避けたいと考えています。
.net - perl スクリプトを使用して Web サーバーを実行する際の問題
ローカル マシンから perl スクリプトを使用して、リモート マシンで Web サーバー (Cassini) を起動しています。また、仮想パス、ルート ディレクトリの設定なども指定しています。
ただし、サーバーからファイルを要求することはできません。
ただし、リモート マシン自体からサーバーを直接起動してファイルを要求すると、正常に動作します。
この動作の理由はありますか?
httpwebrequest - HttpWebRequestで「基になる接続が閉じられました」を取得する
VB.NETで記述されたアプリケーションがあります(asp.netではなく、Windowsコンソールアプリです)。URL(htmlページ)を呼び出して、応答を文字列に戻そうとしています。応答はストレートJSONであり、htmlタグは一切ありません。で開き、{
で閉じます}
。
HttpWebRequestオブジェクトを正常に作成します。次に、を呼び出しますreq.GetResponse()
。これを行うとすぐに、私はThe underlying connection was closed: The connection was closed unexpectedly.
グーグルしてスタックオーバーフローをチェックしているというエラーを受け取り、適用されることがわかったすべてを試しました(多くは適用されないWCFサービス構成に関係しています)。
これが私のコードです:
コメントアウトされた行(コメントスタイルは間違っていますが、SOは正しく解析します)は、オンラインで見つけたものに基づいてこれまでに試したすべてのものです。それらのどれもそれを修正しませんでした。作成中のURLが正しいことを確認しました。ブラウザでまったく同じURLを呼び出すと、期待どおりの正しい応答が返されます。
私はそれをワイヤーシャークしてみました...そして実際に期待される完全なデータがシャークの出力に戻ってきて、それから数行、そして次のような赤い線が表示されます:
http > 51943 [RST] Seq=1607 Win=0 Len=0
これは.NETの前に表示される最後の行ですエラーをスローしています。
System.Net
また、SOの投稿ごとにトレース/ログをオンにしてみました。そこからの出力ファイルでは、同様に期待されるすべてのJSONデータが返されますが、戻った後、.NETトレースログに次の行がスローされます。
これを理解するために次にどこに行くべきかについてのアイデアはありますか?私たちはいくつかの環境監視センサーデバイスからこのデータを読み取っています、そして彼らは私たちに使用するためにこのURLを与えました。
これについて本当に私を混乱させて混乱させる2つのことは、 a)
ブラウザで呼び出されたときに完全に正常に動作する
b)WireSharkと.NETトレースの両方で、すべてのデータが実際に戻ってきていることを示し、フレームワークは何らかの理由でAFTERを除くすべてのデータを受信します!
WebException自体はほとんど使用されていません。InnerExceptionがnullであり、ステータスが「ConnectionClosed{8}」とだけ表示されているためです。
前もって感謝します!!!
UPDATE 08/18 1130:私も今ではなくを使用してみSystem.Net.WebRequest
ましたHttpWebRequest
。これも違いはありませんでした。
UPDATE 08/18 1222:オブジェクト[Http]Web[Request|Response]
を調光してそのメソッドを使用する代わりに、コードを切り替えてみました。ただし、これもまったく同じエラーをスローします。WebClient
DownloadString()
UPDATE 08/18 1230: -を使用してみMy.Computer.Network.DownloadFile()
ましたが、同じ接続が閉じられたというエラーも発生します。
.net - System.Net.WebException: 要求は中止されました: 要求はキャンセルされました
負荷条件下でこのエラーが発生する WCF サービスがあります (それ以外の場合はエラーを再現できないようです)。私たちは、そのような運がないので、約1週間それを回避する方法を見つけようとしています..
表示されるエラーには 2 つの部分があります。
System.ServiceModel.CommunicationException: エラー: (要求は中止されました: 要求は取り消されました。) http チャネル経由でデータを送信中に発生しました。
と:
System.Net.WebException: 要求は中止されました: 要求はキャンセルされました。
Reference.cs
ファイル内のメソッドをオーバーロードして を設定することでキープアライブの使用を無効にすることを多くの人が提案しているのを見てきましたがKeepAlive = false
、クライアント側は (Web 参照に加えて) サービス参照を使用しており、このオプションはもう存在しません。
私が見た別のオプションは、BasicHttpBinding
現在使用しているのではなく、サービスにカスタム Binding を追加することでしたが、これは、webReference を使用していた人への webservice の後方サポートを煩わしくします ( CustomBinding
SOAP が有効になっていないため)。
以前にこのエラーに対処した人はいますか? サーバー側に影響を与えずに WCF でキープアライブを無効にする方法はありますか? このエラーを引き起こすことが知られている他のものはありますか?
httpwebrequest - 内部サーバー エラー (500) httpwebrequest
System.Net.WebException: リモート サーバーがエラーを返しました: (500) 内部サーバー エラー。System.Net.HttpWebRequest.GetResponse() で refill.btnRequestRefill_Click (オブジェクトの送信者、EventArgs e) で
フォームを送信しようとすると、このエラーが発生します。これが私のコードです:
.net - HttpWebRequest: 数値の HTTP ステータス コードへのよりクリーンなアクセス?
存在しないページを取得しようとしたり、無効な HTTP メソッドを使用したりすると、 Status プロパティが の がHttpWebRequest.GetResponse()
スローされます。その Message プロパティで、括弧内にHTTP ステータス コードを確認できます。罰金。しかし、整数の StatusCode プロパティが表示されません。Message プロパティを取得するには、本当に解析する必要がありますか?System.Net.WebException
ProtocolError
.net - SoapHttpClientProtocolは、ProxyNameResolutionFailureではなくNameResolutionFailureをスローします
プロキシ名が無効な場合、SoapHttpClientProtocolはステータスNameResolutionFailureのWebExceptionをスローします。それでは、エラーが発生しているのがプロキシなのか宛先なのかをどのように判断できますか?
NameResolutionFailureが表示されたときに、プロキシサーバーが存在するかどうかのチェックは実行したくありません。私が考えることができる唯一の考えは、WebException.messageプロパティをチェックして、プロキシ名と宛先名が含まれているかどうかを確認することですが、これは厄介なようです。それは利用可能な最高のものですか?
c# - 403 Forbidden 応答の WebException を回避するには?
サーバーに対していくつかのリクエストを実行して、それらのリクエストが適切にブロックされていることを確認する必要があるアプリケーションがあります。つまり、予想されるサーバーの応答は 403 Forbidden です。
次のようなコードを使用します。
aWebException
が最後の行にスローされます。
コードをプロファイリングするとき、try/catch ブロック内のこの例外は、回避したいパフォーマンスへの影響をもたらします。
例外をキャッチせずに (ただし、ソケットを直接使用しないで)、403 を期待してサーバーの応答を確認する方法はありますか?