【问题标题】:send data from java client to nodejs server从java客户端发送数据到nodejs服务器
【发布时间】:2015-03-05 20:58:35
【问题描述】:

所以我从 java 客户端向服务器发送了一个普通字符串,服务器成功接收到它。 问题是收到的数据不仅仅是我最初发送的字符串。

我使用 DataOutputStream 在 java 中发送数据 -> writeUTF("Welcome...");

查看控制台输出

不使用 JSON.stringify()

nodeJS 客户端

connection --> 127.0.0.1
Data arrived type = string
Data = Welcome...
end
Disconnect --> 127.0.0.1

java 客户端

connection --> 127.0.0.1
Data arrived type = string
Data = 
Welcome...
end
Disconnect --> 127.0.0.1


使用 JSON.stringify()

nodeJS 客户端

connection --> 127.0.0.1
Data arrived type = string
Data = "Welcome..."
end
Disconnect --> 127.0.0.1

java 客户端

connection --> 127.0.0.1
Data arrived type = string
Data = "\u0000\nWelcome..."
end
Disconnect --> 127.0.0.1

所以我想知道当我从 java 客户端收到消息时,如何摆脱消息前面的内容?普通的 replace() 没有意义,因为它会有所不同。

【问题讨论】:

  • 它究竟是如何变化的,以至于您不能使用 replace()?
  • "Welcome...dasdasdas" --> "\u0000\u0013Welcome...dasdasdsa" or "W" --> "\u0000\u0001W"

标签: java javascript json node.js


【解决方案1】:

问题可能出在java端。为什么要使用 DataOutputStream?尝试使用更适合发送文本的 OutputStreamWriter 类。

【讨论】:

  • 好的,首先它没有工作,因为服务器上的数据事件没有触发,但是在客户端上的消息发送功能之后使用了 out.flush() 它工作了。谢谢
猜你喜欢
  • 2022-01-12
  • 2020-08-17
  • 2019-09-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-13
  • 1970-01-01
  • 2019-05-09
相关资源
最近更新 更多