发送与变量连接的字符串会在 Minecraft 中引发错误

Sending a String concatenated with variable raises an error in Minecraft

好的,我在发送玩家字符串和变量时遇到了问题。比如这行代码:

client.write("chat", { message: ("Username:"+data.data[0]["name"].toString())})

data 变量是一个 JSON 对象。正在打印

"Username:"+data.data[0]["name"].toString()

工作没有错误,但是当我尝试将其发送到客户端时,客户端断开连接并显示以下错误消息:

Internal Exception: io.netty.handler.codec.DecoderException: 
com.google.gson.JsonSyntaxException: 
com.google.gson.stream.MalformedJsonException: Use 
JsonReader.setLenient(true) to accept malformed JSON at line 1 column 10

顺便说一句,我正在使用 npm minecraft-protocol javascript

我刚刚检查了documentation,发送的消息不符合应使用的格式。

json 不应该直接在 json 中,但应该被字符串化。所以,如 usage 所说,你应该使用类似的东西:

var msg = {
  translate: 'chat.type.announcement',
  "with": [
      'Username',
      data.data[0]["name"]
  ]
};
client.write("chat", { message: JSON.stringify(msg), position: 0, sender: '0' });