如何在Ruby中向客户端发送数组?

如何在Ruby中向客户端发送数组?,ruby,json,sockets,networking,client,Ruby,Json,Sockets,Networking,Client,所以我知道我可以Socket.put文本到我的客户机,但是我如何发送类似数组的东西呢?我想向客户端发送一个完整的数组,但我不确定该怎么做 谢谢 您需要以一种或另一种方式序列化对象。目前最流行的方式之一是JSON。可以将对象转换为字符串: require "json" [:foo, "bar"].to_json # => "[\"foo\",\"bar\"]" 发送该字符串,然后在另一端的机器上对其进行解码: require "json" JSON.parse("[\"foo\",\"ba

所以我知道我可以
Socket.put
文本到我的客户机,但是我如何发送类似数组的东西呢?我想向客户端发送一个完整的数组,但我不确定该怎么做


谢谢

您需要以一种或另一种方式序列化对象。目前最流行的方式之一是JSON。可以将对象转换为字符串:

require "json"
[:foo, "bar"].to_json
# => "[\"foo\",\"bar\"]"
发送该字符串,然后在另一端的机器上对其进行解码:

require "json"
JSON.parse("[\"foo\",\"bar\"]")
# => ["foo", "bar"]

请注意,标准的“json”库取消了字符串和符号之间的区别。如果这很重要,请寻找类似的库或序列化方法。

谢谢。我对json不太熟悉——你知道有什么好的教程吗?json是一种常见的格式,不仅仅适用于Ruby,所以你会在互联网上找到很多资料。特别是对于Ruby,请查看json库的文档。