問題タブ [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.
rest - Powershell Web リクエスト - 400 Bad Request
REST のようなサーバーでコマンドを実行するための powershell スクリプトを作成しています。powershell を使用して XML データを Web サービスに POST しています。「アプリケーション」がエラーを生成する場合を除いて、すべてが完全に機能しています。アプリケーションは xml で詳細を返信し、問題が発生したときに Web 要求エラー (この場合は 400) も返します。200 以外の Web リクエスト エラーが発生するたびに、コマンドがエラーをスローし、エラーの処理方法が台無しになります。
これは、受信した応答の例です (フィドラーを使用):
これは、powershell で受け取るエラーです。
エラーをさらに掘り下げたところ、これは応答の内容 (XML) を取得できる限り近いものでした。
ここから引き出せると思ったのに..
しかし、それは空です:(
私が使用している私のpowershellコードは次のとおりです。
これは、何か助けをするのは難しいことではないようです:)
リチャード
.net-4.0 - プロジェクトを .NET 3.5 から 4.0 にアップグレードすると、VB.NET WinForm Web 接続が機能しなくなりました。
過去数時間、Google を探し回る奇妙な問題が発生しましたが、これに近いものは見つかりませんでした。
リモートでホストされているチャート API の画像 URL を動的に生成し、その URL をソースとして PictureBox ( ) に返すクラスを含む VB.NET Winforms プロジェクトがありますpbCallChart.ImageLocation = MyURL
。これは適切に機能しており、何年もの間正常に機能しています。ただし、最近、プロジェクトを .NET 3.5 から .NET 4.0 にアップグレードする必要がありました (64 ビット ビルドの VS 2010 で作業しているため、.NET 3.5 でアクティブ デバッグを実行できないようです)。これを行うとすぐに、画像が表示されなくなりました。
作業しているのと同じマシンの Web ブラウザーで URL をプルアップすると、画像が機能することを確認しました。最初は、4.0 でそのプロパティが削除されたのではないかと考えたので、Load() 関数に切り替えてみました。サイコロはありません。次に、さらに一歩進んで、この小さな関数を書きました。
これを実行すると (どの URL を渡しても問題ないことを確認しました)、常に次のエラーが発生します。
.NET 3.5 の同じコンピューターで問題なく動作するため、これがプロキシの問題ではないことはわかっています。また、実行可能ファイルをコンパイルしてユーザーに提供したため、単なるデバッグの癖ではないことを確認しました.NET 3.5バージョンは機能し、.NET 4.0バージョンは機能しないことが確認されました.
2 つのバージョンには、私が知らないセキュリティ構成の違いがあるに違いないとしか思えませんが、誰かがどこかで言及しているようです。他の誰かがこのようなことを経験したことがありますか? 私はほとんどアイデアがありません - 何かありますか?
vb.net - System.Net.WebException: HTTP ステータス 401 で要求が失敗しました: Unauthorized
さて、私はこの .NET 1.1 アプリケーション (昔の誰かが書いたもの) を持っています。これはドキュメント リポジトリのようなもので、以前は問題なく動作していました。アイテム/ドキュメントを検索しようとすると、突然次のエラーが表示されます。
ページ: /CPDEPforIT/SearchResults.aspx
エラー:
System.Net.WebException: HTTP ステータス 401 で要求が失敗しました: 権限がありません。System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse (SoapClientMessage メッセージ、WebResponse 応答、ストリーム responseStream、ブール値の asyncCall) で System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke (String methodName、Object[] パラメーター) で CPDEPforIT.InktomiSearchService .soapSearchService.getSearchResults(SearchInput in0) で CPDEPforIT.SearchResults.GetDatasetForSearchQuery(SearchInput searchInput) で CPDEPforIT.SearchResults.Page_Load(オブジェクト送信者、EventArgs e) で System.Web.UI.Control.OnLoad(EventArgs e) で System.Web。 System.Web.UI.Page.ProcessRequestMain() の UI.Control.LoadRecursive()
変化は覚えていません。これは、アプリケーションの外部の何か (IIS 構成/アクセス許可、サーバー、データベース) によって引き起こされた可能性がありますか?
c# - リモート サーバーがエラー 503 Server Unavailable を返す
C# .Net 2.0 で記述されたクライアント サーバー アプリケーションがあります。クライアント/サーバーの応答/要求コードを 4 年間 (!) 実行しています。最近、特定のマシンで、クライアントがサーバーに接続できません:
コード行で:
WebException: リモート サーバーがエラーを返しました: (503) サーバーを使用できません。
Message="リモート サーバーがエラーを返しました: (503) サーバーを利用できません。"
ステータス System.Net.WebExceptionStatus.ProtocolError
他のマシンではこの問題が発生したことがないため、この問題はマシン固有のものだと思います。
そのマシンで設定する必要があるものはありますか? 私は何を取りこぼしたか?
c# - FtpWebRequest WebException: 「リモート サーバーに接続できません」
テスト ハーネスを使用してローカルで実行すると (FTP サーバーがローカル ネットワーク上の別のマシン上にある場合)、FTP サーバーに正常に接続する Windows サービスのコードがあります。
ただし、本番ホスティング環境にインストールすると、恐ろしいWebException「リモートサーバーに接続できません」が発生します。ACTV
私が使用しているかPASV
FTPを使用しているかは問題ではないようです。すべてこの WebException を取得します。ただし、Windows コマンド ラインから FTP を実行しようとすると、問題なく動作します (したがって、ファイアウォールに問題があるわけではありません)。
私が使用しているコード ( How to List Directory Contents with FTP in C#?から適応) は次のとおりです。
例外は、行内 (ステートメントの外側) のFtpWebRequest.GetResponse()
呼び出しでスローされ、スタック トレースには他に何もありません。using
return
System.Net.WebException
: リモート サーバーに接続できませんSystem.Net.FtpWebRequest.GetResponse()
(そのファイルのその行番号)
テスト ハーネス (動作する) と実稼働環境 (動作しない) の唯一の実際の違いは、実稼働環境にファイアウォールが存在することです。4 つのサーバーはすべてわずかに異なるサブネット上にあります。
しかし、プログラムではなく、ProdクライアントからProdサーバーにインタラクティブにFTPできるため、ファイアウォールが問題になることはありません。
bool
appSettings の値を変更してみましたUsePassive
が、違いはありません。いずれの場合も、FTP サーバーのログには何も表示されません (そのため、それほど進んでいません)。
現在、ホスティング環境のハードウェア インフラストラクチャをデバッグできる人がいるとは思っていませんが、これを機能させるために他に何を変更できるかを考えるのに苦労しています。同じメソッドを呼び出して、テスト ハーネスでローカルに動作することを確認しました。参考までに、テスト ハーネス コードは次のようになります。
他に何を試すことができるか考えている人はいますか?
ありがとう!
アップデート
コメントを参照する場所のいくつかの提案があったので、これをもう少し更新できます。
問題はユーザーのアクセス許可ではないようです — サービスはローカル システム アカウントのコンテキストで実行されています (管理者よりも多くのアクセス許可を持っています) 。
問題は、コード アクセス セキュリティではないようです。このコード チャンクのエントリ メソッドへの呼び出しを追加しました。
SocketPermission
.
Demand
また、結果としてSecurityExceptionがスローされることはありません。同じコード位置の新しい行番号で、同じ WebException をまだ取得しています。
私が試すことができることについて、他に何か提案はありますか?
wcf - SignalRWebRequestは中止されています
WCF Webサービスに、Eventoエントリが作成されるたびにSignalRを介して通知を送信する機能があります。また、Eventoエントリに関連するクラスターに過去1時間に3つ以上のエントリがあったかどうかを確認します。 、その後、別の通知が送信されます。
関数は次のようになります。
通知の送信に問題はありませんが、過去1時間に3つ以上のエントリがあるたびに例外がスローされます。
これは、例外に対して取得する出力です。
サービスのパフォーマンスが改ざんされていなくても、なぜこの例外がスローされるのかわかりませんが、問題が発生する可能性があります。どうすればこの問題を取り除くことができますか?
c# - WebException から完全なリクエストの詳細を取得するにはどうすればよいですか? (GET|POST など)
asp.net Web API プロジェクトがあります。私のコントローラーでは、
グローバル レベルでエラーをキャッチします。コントローラー メソッドから 2 つの get 要求が発行されています。それらは失敗しているため、例外フィルターで例外が発生しています。ただし、例外は失敗したリクエストの詳細を表示していません。それらを手に入れることは可能ですか?たとえば、4 つの GET 要求が呼び出された可能性があり、そのうちの 1 つが失敗し、例外がスローされています。しかし、私が見ているのは、というメッセージだけです...
リモート名を解決できませんでした: 'xx.xx.com'
しかし、クエリ文字列などの詳細が必要です...
Web例外の応答オブジェクトもnullです:-(
c# - WebRequest.BeginGetResponse を使用した WebExcpetion
長い間私を悩ませている質問があります。
Windows Phone 8 と c# を使用しています。
Webからファイルをダウンロードしているときに、時々この例外が発生します。
しかし、その後、プログラムを再度実行すると、正常に動作します。なぜリモートサーバーが見つからないことがあるのかわかりませんが、問題は本当にサーバーにあるのでしょうか? それは私のコードで何かだと思います、私はこれらの関数を使用します:
この例外がポップアップし続け、解決できなかったため、アドバイスをいただければ幸いです。
c# - コンピューターを再起動しない限り、HttpWebRequestは毎回接続に失敗します
リモートSAPサーバーに接続する必要があるWPFC#アプリケーションがあります。2台のコンピューター(同じネットワーク)でアプリケーションを実行していますが、サーバーにアクセスできることがわかっています。
最初は、コンピューターAはWeb要求を使用して正常に接続できます(数回試行した後、すべて正常に動作します)。ランダムに(複製できないようです)、すべてのWeb要求が失敗し、「リモートサーバーに接続できません」(System.Net.WebExceptionと入力)というメッセージが表示されます。ブラウザでURLに移動すると、問題なく読み込まれます。アプリケーションのみが接続できません。例外をスローするメソッドはHttpWebRequest.GetRequestStreamです。
アプリケーションを数回再起動した後でも、すべてのHttpWebRequestsは接続に失敗します。複数のSAPサーバーがあり、それらのいずれかに接続しようとすると同じ結果が得られます。その間、コンピューターB(私の開発マシン)上のアプリケーションは、問題なくどのサーバーにも接続できます。コンピュータAを完全に再起動した後でのみ、再接続できます。
これは、これまでに2台の異なるコンピューターで発生しました。どちらの場合も、それを解決する唯一の方法は、コンピューターを再起動することでした。
ここにいくつかのコードがあります:
編集:応答部分を見落としました:
Edit2:それで、私はCloseへのすべての呼び出しをコメントアウトし、数十のリクエストを行いました。また、応答を取得するコードを削除し、さらにいくつかのリクエストを行いました。これらのテスト中、例外はなく、すべてが正常に機能しました。
これらの結果はさておき、このようなことがプログラムを壊す可能性があることは理解できますが、プログラムを再起動した後、または別のリモートサーバーに接続しようとした後も、なぜそれが壊れてしまうのかわかりません。.NET Frameworkで何かが混乱しているように見えますが、マシン全体を再起動しない限り、それ自体は解決されません。