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中文网其他相关文章!