问题标签 [tcpsocket]

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.

0 投票
1 回答
3851 浏览

javascript - PHP反复从TCP套接字接收数据

这个想法是通过TCP套接字连接PHP网页和C程序,网页等待C程序的连接并在连接建立后立即接收数据。PHP socket连接和数据接收代码如下:

PHP(socketRead.php):

要从套接字动态读取数据,我使用 jquery 请求。

Javascript(索引.html):

在我尝试添加间隔以重复读取数据之前效果很好。

Javascript(索引.html):

第一次连接/接收仍然有效,但是当我再次尝试连接时,我在 C 程序中收到“连接被拒绝”。你能帮我解决这个问题吗?

0 投票
1 回答
105 浏览

c - socket select() 时间切换?

我创建了 6 个套接字并同时使用 select 监听所有这些套接字。我想知道 CPU 从一个插槽切换到另一个插槽需要多长时间。有人知道吗; 如果没有,有人可以指导我如何计算这个问题!

0 投票
1 回答
125 浏览

ruby - Ruby TCPSocket 服务器 - 我可以告诉客户端正在连接哪个主机吗?

我有一个基于 TCPSocket(非 HTTP)的 ruby​​ 服务器。

我有 2 个不同的域,都指向我的服务器 IP 地址(同一个)的 A 记录。因此,有客户端连接到这些域之一。是否可以判断客户端连接到哪个域?

我看到这在其他协议中是可能的,但我不确定这是基于手动添加的标头还是真的从基本的 tcp/ip 连接中提取。例如,在 PHP 中有$_SERVER["HTTP_HOST"]显示客户端连接到哪个域。

0 投票
1 回答
2497 浏览

c++ - 错误 C2664: 'errno_t strcpy_s(char *,rsize_t,const char *)' : 无法将参数 2 从 'char [512]' 转换为 'rsize_t'

代码:

错误:

错误 C2664: 'errno_t strcpy_s(char *,rsize_t,const char *)' : 无法将参数 2 从 'char [512]' 转换为 'rsize_t'

错误 C2664: 'errno_t strcpy_s(char *,rsize_t,const char *)' : 无法将参数 2 从 'char [512]' 转换为 'rsize_t'

IntelliSense:没有重载函数“strcpy_s”的实例与参数列表参数类型匹配:(char [512], char [512], int)


我一直在尝试解决这个问题。请帮忙。

新代码:

新错误:

http://i.stack.imgur.com/55IUF.png

0 投票
2 回答
6202 浏览

java - Android - 读取 tcp 套接字数组字节

我有一块使用 modbus 通信的电路板,我想与安卓智能手机建立连接。使用 jamod 库,它不会创建连接,因此我使用了标准的 tcp 套接字。通过这种方式,我可以创建连接,并且可以将字节数组发送到电路板。当我想阅读董事会的回复时,问题就出现了。

这是代码:

这段代码进入了我在主线程中调用的线程。板子的回复是一个字节数组,如“asdo”,有六个十六进制字节。

如何阅读回复并将其转换为字符串以便阅读?

谢谢!

0 投票
1 回答
274 浏览

ruby - 使用 Ruby 套接字传输文件时如何限制带宽

我正在开发一个 Windows 守护程序来坐在一个装满机器的办公室,并使用所需的信息来响应请求。

它需要能够将压缩的日志文件发送回发送者。这些日志文件不会超过 ~3MB,但由于我们的系统对网络峰值的敏感性,我将带宽限制在 250KB/s 左右是非常重要的。

如何在 Ruby 中实现这一点?

提前致谢。

0 投票
2 回答
911 浏览

ios - 即使将 enableBackgroundingOnSocket 设置为 TRUE,XMPPFramework 也不会在后台发送保持活动状态

我认为标题足以说明问题。我想XMPPFramework在后台工作(如服务),即使应用程序未处于活动状态也能接收消息。我已经设定

xmppStream.enableBackgroundingOnSocket = YES;

但这里没有进展。该应用程序进入后台,它仍然会在几秒钟内接收消息(并显示通知),但如果它在几秒钟内处于非活动状态(并且也空闲(没有传入消息)),它将不再在后台工作。我尝试记录并看到应用程序在收到最后一条消息(最后一个活动)后几秒钟内发送保持活动数据包,但如果有一段时间没有活动,它会停止发送保持活动并且应用程序不会'不再被通知和工作了。以防万一,我已将“保持活动发送间隔”设置为 5 秒。

我非常感谢任何快速帮助。

非常感谢

0 投票
1 回答
885 浏览

ruby - 保持 TCPSocket 开放:服务器还是客户端的责任?

我一直在网上阅读有关 Ruby 的 TCPSocket 和 TCPServer 的示例,但我仍然不知道也找不到最佳实践。如果您有一个正在运行的 TCPServer,并且您希望在多个连接/客户端之间保持套接字打开,那么谁应该负责保持它们打开,服务器或客户端?

假设您有一个 TCPServer 正在运行:

和客户:

我看到的所有示例socket.close最后都有,我认为这不是我想要的,因为这会关闭连接。服务器和客户端应保持开放连接,因为它们需要来回发送数据。

PS:我是网络上的菜鸟,所以如果我的问题听起来完全愚蠢,请告诉我。

0 投票
1 回答
7038 浏览

ruby - Ruby:4 字节数组到 int32

从中读取了 4 个字节TCPSocket(实际上套接字返回一个字符串,然后我调用.bytes以获取一个数组)。现在需要将它们转换为 int32 大端。

或者可能是 TCPSocket 有一些方法可以立即读取 int32?

0 投票
1 回答
324 浏览

ruby-on-rails - 持久的 TCPSocket 和 Ruby 线程

我正在使用 TCPSocket 作为客户端连接到服务器。要点是保持连接打开,并在消息到达后立即发送或接收消息。

发送消息没有问题,但是socket.recv(n)当服务器没有响应时在主线程中执行,使客户端的主线程在等待数据时暂停。

在 Ruby 中使用持久连接来防止主线程阻塞的好习惯是什么?

假设应该使用额外的线程。在 Rails 应用程序中的何处插入此线程初始化?制作一个工作进程?