问题标签 [tcpclient]
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.
c# - 您可以通过 TcpClient 发送比 SendBufferSize 更大的文件吗?
我正在试验 .NET 中的 Tcp 连接,我想发送一些大于 TcpClient 对象的 SendBufferSize 比例的数据。是否可以通过简单地写入网络流来发送数据,或者我是否需要将其切成碎片并发送,然后在另一端再次创建它?
c# - 当发送大于 SendBufferSize 的数据时,如何接收数据?
我刚刚问了一个关于如何发送大于 SendBufferSize 的数据的问题,答案是分几部分发送。
我的第二个问题是如何接收这些数据?它会在网络流中完成还是将其分开。
c# - TcpClient 无法连接
我正在用 C# 开发一个 Tcp 客户端,并且正在使用TcpClient
该类。我无法连接到服务器。
调试应用程序我可以看到调用Connect
是成功的,但是在我这样做之后,我会检查netstat
服务器和客户端上的连接状态。结果是服务器的连接是ESTABLISHED
,但在客户端上,我在 netstat 结果中看不到与服务器的任何连接。
阅读TcpClient
实例我可以看到该属性Connected
是真实的,所以它应该没问题但是当我尝试从它读取时NetworkStream
它挂起。
当我说它挂起时,我的意思是服务器正在发送数据,但 readline 根本没有得到任何数据。
你知道可能是什么问题和一些解决方法吗?
谢谢
c# - TcpClient 与服务器通信以保持 C# 中的活动连接?
我有这个工作正常的 TcpClient 代码。它连接到 Linux 系统上的 perl 服务器并接收服务器发送给它的任何内容。效果很好。
但是在某些情况下,我遇到了一些问题:
- 我的工作连接经常在空闲时间后断开连接,所以我在服务器中实现了,所以当它收到 PING 时,它会用 PONG 响应。我可以用 UDP 向服务器发送 PING,它会在 tcp 上用 PONG 响应,但我更喜欢 tcp 客户端的内置方式,所以它确实每 60 秒左右发送一次 PING。即使 UDP 解决方案是可以接受的,我也没有超时,
string varReadData = Encoding.ASCII.GetString(data, 0, bytes).Trim();
所以当 PONG 没有到达时,我的客户甚至都不会注意到它。它只是一直在等待......这让我...... - 我的另一个问题是,在某些时候,
string varReadData = Encoding.ASCII.GetString(data, 0, bytes).Trim();
它一直在等待数据。当服务器崩溃或断开我的客户端时,我什至没有注意到这一点。我希望服务器有某种timeout
或检查连接是否处于活动状态。如果它不活动,它应该尝试重新连接。
修复此 TcpClient 的最简单方法是什么?我如何实现双向通信以确保如果服务器断开我的连接或我的网络断开连接,客户端会注意到它并重新建立连接?
silverlight-3.0 - Silverlight 3 中的网络错误处理
我们正在编写使用 Tcp 连接的 silverlight3 应用程序。我们的项目使用客户端服务器架构。客户端部分是silverlight应用,服务器部分是winform应用。
我们使用 TcpClient 和 TcpListner 进行连接。
我们可以处理以下错误:
1. 用户关机
2. 用户网线拔掉
3. 服务器关机
但是我们不能在用户级别处理服务器网络电缆拔出(对于服务器,我们使用 NetworkChange.NetworkAvailabilityChanged 事件处理它)。
我们怎么做?
为了应用程序的正确工作,我们必须处理其他网络吗?
谢谢。
c# - 如何像 HttpWebRequest 一样使用 TcpClient 进行 HTTPS?
我有一个基于 TcpClient 的通信系统,它工作得很好,除了它对特定 IP 执行 HTTPS 时。然后它开始失败。
通过使用浏览器或 HttpWebRequest,我对该 IP 进行 HTTPS 访问没有问题。
我创建了一个测试程序来将我的问题缩小到它的基本本质,如果你愿意,可以在这里查看它:TestViaTcp
该测试程序完美地适用于相同 IP 的基本 HTTP,它总是对请求产生成功的响应。我把它放在一个循环中,用按键触发它,它会整天继续成功。一旦我切换 HTTPS,我就会得到一个重复的模式。它会起作用,然后它不会,成功后是失败,然后是成功,整天来来回回。
我一直遇到的特别失败是这个:
这是附加的堆栈跟踪:
HttpWebRequest 和浏览器都(IIRC)使用 Win32 库来处理来回通信,而 TcpClient (AFAIK)使用托管的 .net Socket 类,所以我确信它们之间存在很大差异。我确实需要用 TcpClient 来做这件事,所以不幸的是我不能只“使用 HttpWebRequest,因为我知道我可以让它工作”。
关于问题所在的最大提示可能是“有效,无效,有效,无效”模式,这是什么原因造成的?我能做些什么来避免我得到的 IOException ?当我使用 HttpWebRequest 执行 HTTPS 时,是否有某种方法可以获得“始终有效”的行为?
我应该可以对 TcpClient 做一些事情,让它像 HttpWebRequest 一样采取行动和做出反应,但我还没有做到。有任何想法吗?
注意:我正在与之通信的服务器可配置它侦听的端口和期望的协议,但在其他方面完全不可修改。
另请注意:我读过 .net 3.5 在 SP1 之前与 SslStream 有这个特殊问题,但我有 SP1,我的程序是针对 3.5 构建的,所以我假设这不是“已知错误”我我跑到这里。
.net - TcpClient SocketException .NET
我的电脑配置为自动获取IP地址。当我使用ipconfig /all
时,它显示如下:
我应该使用95.38.95.204
还是192.168.72.198
作为服务器和客户端的 IP 地址?
当我使用192.168.72.198
时,服务器连接成功,但客户端抛出SocketException
如下
连接尝试失败,因为连接方一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应 192.168.72.198:1986
我在 geekpedia 上使用了这篇文章http://www.geekpedia.com/tutorial239_Csharp-Chat-Part-1---Building-the-Chat-Client.html
谢谢如果有人可以帮助我。
vb.net - 在 TCP 反向连接方面需要帮助
我正在为我正在处理的一些项目创建身份验证服务器。此身份验证服务器通过接收数据并将数据传输给尝试进行身份验证的用户来工作。用户可以成功地向服务器发送数据,但是发送回来时需要端口转发。我读到一种方法,我不需要使用反向连接进行端口转发,但我不知道如何让它工作。我找到了一个教程并尝试实现,但是当它尝试连接以读取流时,它说连接被拒绝。
有任何想法吗?
c# - 使用 C# 连接到 IRC 服务器
我一直在尝试一个简约的 IRC 机器人,但我永远无法连接到工作。
我正在通过一个 TcpClient 对象来执行此操作,我已经看到它在其他此类项目中使用过,并且据报道这些项目有效。
这是代码。
所以我稍等片刻,然后对昵称执行 /whois,但我总是得到相同的回复:用户不存在。
据我所知,TcpClient 建立连接,然后我可以使用 NetWorkStream 实例读取和写入该连接。
我还需要做什么?
c# - TCPClient 似乎没有保持连接,为什么?
我使用 TcpClient 有以下代码
但是会发生什么是 Console.WriteLine(rdr.ReadLine()); line 将在几秒钟内打印出状态,而不是停止 + 不再在那里打断点,即使它仍然处于连接状态。
它应该做的是继续在控制台中写入状态,因为它是一个保持活动的连接,并且每隔几秒钟就会连续提到几次“Twitter”关键字。
任何想法可能导致此问题?