首页 >后端开发 >C++ >为什么我的 WCF 4.0 文件上传失败并出现错误'无法建立连接,因为目标计算机主动拒绝它。127.0.0.1:3446”?

为什么我的 WCF 4.0 文件上传失败并出现错误'无法建立连接,因为目标计算机主动拒绝它。127.0.0.1:3446”?

Patricia Arquette
Patricia Arquette原创
2025-01-13 09:17:42849浏览

Why is My WCF 4.0 File Upload Failing with Error

WCF 4.0 文件上传失败:连接被拒绝错误 (127.0.0.1:3446)

问题描述: 使用 WCF 4.0 通过流进行文件上传时,出现以下错误:“无法建立连接,因为目标计算机主动拒绝了它。127.0.0.1:3446”

错误详情:

  • 错误发生在以下代码行:Stream serverStream = request.GetRequestStream();
  • 代码尝试使用 HttpWebRequestHttpWebResponse 连接到 REST 端点。

解决方案:

错误信息表明目标计算机拒绝了连接请求。可能原因:

  • 防火墙: 确保防火墙已关闭或允许在指定端口 (3446) 上进行连接。
  • 主机进程: 验证 WCF 服务的主机进程是否正在运行并监听 3446 端口。

测试方法:

建议不要从 Windows 窗体项目进行测试,而是在服务本身内部使用以下代码检查连接:

<code class="language-csharp">string baseAddress = "http://localhost:3446/File/AddStream/stream.txt";
using (HttpClient client = new HttpClient())
{
    var response = client.GetAsync(baseAddress).Result;
    if (response.StatusCode == HttpStatusCode.BadRequest)
    {
        // 错误处理
    }
}</code>

使用 netstat 验证:

要验证服务是否正在监听正确的端口,请使用以下命令(假设为 Linux 系统):

<code class="language-bash">netstat -anp | grep 3446</code>

这将输出一行信息,指示服务是否正在监听 3446 端口。如果没有输出,则服务未在该端口监听。

以上是为什么我的 WCF 4.0 文件上传失败并出现错误'无法建立连接,因为目标计算机主动拒绝它。127.0.0.1:3446”?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn