无法从传输连接读取数据:现有连接被远程主机强制关闭

2024-01-05

我有一个服务器应用程序,有时,当客户端尝试连接时,我会收到以下错误:

注意:“无法从客户端获取流或登录失败”是我在 catch 语句中添加的文本

它停止的行(sThread:第96行)是:

tcpClient = (TcpClient)client;
clientStream = tcpClient.GetStream();
sr = new StreamReader(clientStream);
sw = new StreamWriter(clientStream);

// line 96:                 
a = sr.ReadLine();

可能是什么原因导致这个问题?请注意,它不会一直发生


我在调用网络服务时收到此错误。该问题还与传输级安全有关。我可以通过网站项目调用 Web 服务,但是当在测试项目中重用相同的代码时,我会收到包含此消息的 WebException。在调用之前添加以下行解决了该问题:

System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;

Edit

System.Net.ServicePointManager.SecurityProtocol https://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.securityprotocol(v=vs.110).aspx- 这个性质 选择安全套接字层 (SSL) 或传输的版本 用于使用以下协议的新连接的层安全 (TLS) 协议 仅安全超文本传输​​协议 (HTTPS) 方案;现存的 连接没有改变。

我相信SecurityProtocol在选择协议版本时,TLS 握手期间的配置非常重要。

TLS 握手 https://en.wikipedia.org/wiki/Transport_Layer_Security#Protocol_details- 该协议用于通过 TLS 交换实际应用数据交换双方所需的所有信息。

客户您好- 客户端发送一条 ClientHello 消息,指定其支持的最高 TLS 协议版本...

服务器问候语- 服务器用 ServerHello 消息进行响应,其中包含所选的协议版本...所选的协议版本应该是客户端和服务器都支持的最高版本。例如,如果客户端支持TLS版本1.1,服务器支持版本1.2,则应选择版本1.1;不应选择 1.2 版本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法从传输连接读取数据:现有连接被远程主机强制关闭 的相关文章

  • 如果.Net Core可以在Windows上运行,为什么不能在.Net Framework中引用.Net Core DLL?

    我明白为什么 Net Framework 可能会在 Net Core IE 中导致问题 因为不存在特定于 Windows 平台的 API 但是为什么不能直接引用 Net Core 作为 Net Framework 中的库呢 如果 Net C
  • 在 Xcode4 中使用 Boost

    有人设置 C Xcode4 项目来使用 Boost 吗 对于一个简单的 C 控制台应用程序 我需要在 Xcode 中设置哪些设置 Thanks 用这个来管理它 和这个
  • TextBox 焦点的 WinForms 事件?

    我想添加一个偶数TextBox当它有焦点时 我知道我可以用一个简单的方法来做到这一点textbox1 Focus并检查布尔值 但我不想那样做 我想这样做 this tGID Focus new System EventHandler thi
  • 在 C# 中将位从 ulong 复制到 long

    所以看来 NET 性能计数器类型 http msdn microsoft com en us library system diagnostics performancecounter aspx有一个恼人的问题 它暴露了long对于计数器
  • 转到 C# WPF 中的第一页

    我正在 WPF 中使用导航服务 为了导航到页面 我使用 this NavigationService Navigate new MyPage 为了返回我使用 this NavigationService GoBack 但是如何在不使用的情况
  • Xamarin Android:获取内存中的所有进程

    有没有办法读取所有进程 而不仅仅是正在运行的进程 如果我对 Android 的理解正确的话 一次只有一个进程在运行 其他所有进程都被冻结 后台进程被忽略 您可以使用以下代码片段获取当前正在运行的所有 Android 应用程序进程 Activ
  • C++派生模板类继承自模板基类,无法调用基类构造函数[重复]

    这个问题在这里已经有答案了 我试图从基类 模板 继承 派生类也是模板 它们具有相同的类型 T 我收到编译错误 非法成员初始化 Base 不是基类或成员 为什么 如何调用基类构造函数 include
  • 单元测试失败,异常代码为 c0000005

    我正在尝试使用本机单元测试项目在 Visual Studios 2012 中创建单元测试 这是我的测试 TEST METHOD CalculationsRoundTests int result Calculations Round 1 0
  • 组合框项目为空但数据源已满

    将列表绑定到组合框后 其 dataSource Count 为 5 但组合框项目计数为 0 怎么会这样 我习惯了 Web 编程 而且这是在 Windows 窗体中进行的 所以不行combo DataBind 方法存在 这里的问题是 我试图以
  • C# 编译器如何决定发出可重定向的程序集引用?

    NET Compact Framework 引入了可重定向程序集引用 现在用于支持可移植类库 基本上 编译器会发出以下 MSIL assembly extern retargetable mscorlib publickeytoken 7C
  • 过期时自动重新填充缓存

    我当前缓存方法调用的结果 缓存代码遵循标准模式 如果存在 则使用缓存中的项目 否则计算结果 在返回之前将其缓存以供将来调用 我想保护客户端代码免受缓存未命中的影响 例如 当项目过期时 我正在考虑生成一个线程来等待缓存对象的生命周期 然后运行
  • 是否有一个 C++ 库可以从 PDF 文件中提取文本,例如 PDFBox for Java? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 去年 我使用 PDFBox 在 Java 中创建了一个应用程序来获取某些 PDF 文件中的原始文本 现在
  • gdb查找行号的内存地址

    假设我已将 gdb 附加到一个进程 并且在其内存布局中有一个文件和行号 我想要其内存地址 如何获取文件x中第n行的内存地址 这是在 Linux x86 上 gdb info line test c 56 Line 56 of test c
  • 内核开发和 C++ [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 从我know https stackoverflow com questions 580292 what languages are windo
  • 如何在 GCC 5 中处理双 ABI?

    我尝试了解如何克服 GCC 5 中引入的双重 ABI 的问题 但是 我没能做到 这是一个重现错误的非常简单的示例 我使用的GCC版本是5 2 如您所见 我的主要函数 在 main cpp 文件中 非常简单 main cpp include
  • .NET UI 元素线程限制的原因

    我们知道 除了实例化元素的线程之外 不可能从任何线程执行操作任何 UI 元素属性的代码 我的问题是 为什么 我记得当我们使用 COM 用户界面元素时 在 COM Visual Basic 6 0 时代 所有 UI 元素都是使用 COM 类和
  • 如何查明CONFIG_FANOTIFY_ACCESS_PERMISSIONS是否启用?

    我想利用fanotify 7 http man7 org linux man pages man7 fanotify 7 html我遇到的问题是在某些内核上CONFIG FANOTIFY ACCESS PERMISSIONS不起作用 虽然C
  • 以编程方式使用自定义元素创建网格

    我正在尝试以编程方式创建一个网格 并将自定义控件作为子项附加到网格中 作为 2x2 矩阵中的第 0 行第 0 列 为了让事情变得更棘手 我使用了 MVVM 设计模式 下面是一些代码可以帮助大家理解这个想法 应用程序 xaml cs base
  • 从类模板参数为 asm 生成唯一的字符串文字

    我有一个非常特殊的情况 我需要为类模板中声明的变量生成唯一的汇编程序名称 我需要该名称对于类模板的每个实例都是唯一的 并且我需要将其传递给asm关键字 see here https gcc gnu org onlinedocs gcc 12
  • WPF/数据集:如何通过 XAML 将相关表中的数据绑定到数据网格列中?

    我正在使用 WPF DataSet 连接到 SQL Server Express XAML 和 C Visual Studio 2013 Express 我从名为 BankNoteBook 的现有 SQL Server Express 数据

随机推荐

  • JavaScript 中的变量有多昂贵?

    局部变量有多昂贵 var v 全局变量 window v 和跨全局变量 parent v 在 JavaScript 中 在主要浏览器中 有人对此进行过良好的测试吗 忽略解释器 解析器的优缺点 重要的是运行时必须查看作用域链的各个部分的程度
  • 带钩子的应用程序加载启动画面

    在使用带钩子的功能组件时 如何实现加载资源的同时显示闪屏 使用带有钩子的应用程序加载和 或启动屏幕的模式是什么 Thanks Bill 如果你只明白Hook s useState 这是一个非常容易的改变 这可以简单地转换为函数 并使用以下方
  • 如何设计协议缓冲区中未来的附加枚举值?

    Protocol buffers 的吸引人的功能之一是它允许您扩展消息定义 而不会破坏使用旧定义的代码 对于枚举的情况根据文档 https developers google com protocol buffers docs proto
  • Windows 中的网络文件传输

    我想使用 C 或 C 通过网络传输文件 我应该查找哪些主题 我怎样才能做到这一点 您应该从选择协议开始 HTTPS http en wikipedia org wiki HTTPS and SFTP http en wikipedia or
  • Java ArrayList / String / 原子变量读取线程安全吗?

    我一直在思考和阅读 但可以找到绝对权威的答案 我有几个由包含 ArrayList 字符串和原始值的对象组成的深层数据结构 我可以保证这些结构中的数据不会改变 没有线程会对列表进行结构更改 更改引用 更改原语 我想知道读取这些结构中的数据是否
  • IOError:设备上没有剩余空间 - 哪个设备?

    我正在将一个小文件 8 5 Mb 上传到 Flask 测试服务器 文件上传完成后 服务器报告 File home ubuntu virtualenvs eco app lib python2 7 site packages wtforms
  • Angular2 rxjs http.request.catch 对于某些 http 错误有奇怪的行为

    我的 http 服务无法正确捕获一些 http 错误 catch 方法有 2 个不同的响应对象 见下文 private fireRequest request Request Observable
  • Shmem vs tmpfs vs mmap [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • ASP.NET MVC 脚本包未呈现

    我已将以下行包含在BundleConfig cs file bundles Add new ScriptBundle bundles jqueryajax Include Scripts jquery unobtrusive ajax mi
  • Firestore如何从另一个集合文档id引用中获取集合值

    I have two fire store collection with following reference image I want to get the firstName and title Here signup id is
  • C 中使用 enum 和 int 变量的区别

    有什么区别 enum week Mon Tue Wed Thur Fri Sat Sun enum week day Wed and enum week Mon Tue Wed Thur Fri Sat Sun int day Wed in
  • for 循环中的 Swift async/await

    我对 WWDC 2021 上宣布的 Swift 5 5 中新的异步 等待模式感到摸不着头脑 似乎涉及到很多学习内容 但并不像想象的那么容易掌握 我刚刚在 WWDC 视频中看到了这个 for 循环 for await id in static
  • 列出所有没有远程的本地分支

    问题 我想要一种删除所有没有远程的本地分支的方法 将分支名称通过管道传输到git branch D branch name 但是我首先如何获得该列表呢 例如 我创建一个没有遥控器的新分支 git co b no upstream 我列出了所
  • 权限拒绝:从 pid=-1 访问服务 ComponentInfo {...}

    我正在尝试使用 Google 的活动识别服务 几天前 一切都很顺利 即我可以使用该服务连接来获取活动信息 但今天我发现我再也收不到了 查看日志后发现这个错误 05 15 21 19 27 196 W ActivityManager 765
  • 使用内存映射文件的缺点

    我的网络服务每分钟写入数千笔交易 我们将它们保存在硬盘上 我正在测试保存这些文件的不同方法 并使用标准 IO 和 MemoryMapped 文件进行了一些测试 在我的结果中 使用 MemoryMapped 文件写入文件 20 k 文本文件
  • Xcode Server Bot 集成无法导出存档并出现断言失败:exportArchive:ipatool 失败并出现异常

    我有一个使用 Xcode 7 2 和 Server 5 0 15 构建的服务器设置 这样我们就可以进行 CI 我能够创建一个 Xcode 机器人来创建存档 但它无法完成最后一步 即将 ipa 存档导出到服务器 以便可以通过临时构建下载它 我
  • 如何检查目录是否存在并如果不存在则创建一个新目录?

    我尝试了以下方法 但我认为它不是特别漂亮 let path target dir if std path Path new path exists std fs create dir path std fs create dir all h
  • 如何将 iOS OSLog 与 Xamarin 结合使用?

    我如何使用 iOSOSLog https developer apple com documentation os oslog在 Xamarin iOS 中 我确实成功地使用了 NSLog 如下所示 但我看不到如何使用 NSLog 设置子系
  • Django 不想显示媒体文件

    我正在尝试输出我保存的图像 如下所示 product image models ImageField blank True upload to images 我的 seetings py 看起来像 MEDIA URL media MEDIA
  • 无法从传输连接读取数据:现有连接被远程主机强制关闭

    我有一个服务器应用程序 有时 当客户端尝试连接时 我会收到以下错误 注意 无法从客户端获取流或登录失败 是我在 catch 语句中添加的文本 它停止的行 sThread 第96行 是 tcpClient TcpClient client c