WCF サービス エラー:「接続を確立できません...」トラブルシューティング ガイド
WCF ストリーム経由でファイルをアップロードしようとして、「ターゲット コンピューターが積極的に拒否したため、接続を確立できませんでした 127.0.0.1:3446」というエラー メッセージが表示された場合は、根本原因を特定することが重要です。
考えられる原因と解決策:
「アクティブな拒否」エラーは、接続の試行がホストによって拒否されたことを示します。これは、ファイアウォールが接続をブロックしているか、サービス ホストが指定されたポート (3446) をリッスンしていないことが原因である可能性があります。
ファイアウォールの設定を確認してください: ファイアウォールがサービスへの接続をブロックしていないことを確認してください。テストのためにファイアウォールを一時的に無効にすることを検討してください。
サービス ホストのステータスを確認します: WCF 実装をホストしているサービスが実行中であり、正しいポートでリッスンしていることを確認します。コマンドプロンプトで次のコマンドを実行します:
<code> netstat -anb</code>
(Linux システムの場合は、「netstat -anp」に変更します)
サービスがリストされており、予期されたポートでリッスンしていることを確認します。
ローカル テスト: サービスにローカルで接続するための簡単なテスト アプリケーションを作成します。これは、ネットワークの問題を切り分けるのに役立ちます。例:
<code class="language-c#"> byte[] fileStream; using (FileStream fs = new FileStream("E:\stream.txt", FileMode.Open, FileAccess.Read, FileShare.Read)) { fileStream = new byte[fs.Length]; fs.Read(fileStream, 0, (int)fs.Length); } string baseAddress = "http://localhost:3446/File/AddStream/stream.txt"; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(baseAddress); request.Method = "POST"; request.ContentType = "text/plain"; Stream serverStream = request.GetRequestStream(); serverStream.Write(fileStream, 0, fileStream.Length);</code>
ローカル テストが成功した場合、問題は外部ネットワーク接続またはサーバー構成にある可能性があります。
以上がWCF サービス接続が拒否されました:「ターゲット マシン 127.0.0.1:3446 が積極的に拒否したため、接続を確立できませんでした」のトラブルシューティング方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。