【问题标题】:Can Node.js socket handle multiple write messages? Weird bugNode.js 套接字可以处理多个写入消息吗?奇怪的错误
【发布时间】:2011-07-29 05:47:48
【问题描述】:

我正在编写一个 node.js 服务器,但遇到了一个奇怪的问题 这是代码

   socket.write(">> first message \0","utf8",function(){ } );
   socket.write(">> second message \0","utf8",function(){ });

当我在客户端(ADOBE FLASH SOCKET)收听时。它只收到 1 条消息两次 如果我颠倒代码的顺序,稍后会收到两次消息,有什么线索可以解决这个问题吗?

我确信这个错误不是编程中的错误,因为我已经检查了一百次,我还尝试显式地创建一个堆栈,然后发现 node.js 应该在内部维护一个堆栈)。


我的节点版本是 0.5.1 在 windows 7 上运行(网站上分发的 windows 二进制文件)

【问题讨论】:

  • 投票答案无效

标签: javascript html node.js


【解决方案1】:

尝试在第一个的回调中发送第二个数据:

socket.write(">> first message \0","utf8",function(){
    socket.write(">> second message \0","utf8",function(){ });
} );

【讨论】:

  • 如果我有超过 1 个插座,我试过了。 this.Write 是我认为最好的解决方案......你知道它会确保只有这个套接字写入响应,但它失败了
  • 检查你的 flash 代码,我无法想象 node.js 中有这么难的错误
  • 嗯,好吧,我认为它也与 flash 相关,而不是 nodejs
  • 啊,我正在使用的 api 使用了一个全局变量(可能)这使它崩溃了......嗯
猜你喜欢
  • 1970-01-01
  • 2020-08-18
  • 2014-11-08
  • 2010-11-03
  • 1970-01-01
  • 1970-01-01
  • 2011-10-03
  • 2010-12-07
  • 1970-01-01
相关资源
最近更新 更多