Так что я знаю, что я могу написать Socket.puts
текст своим клиентам, но как я могу отправить что-то вроде массива? Я хочу отправить целый массив клиенту, но я не уверен, как бы я это сделал.Как отправить ARRAY клиенту в Ruby?
Спасибо!
Так что я знаю, что я могу написать Socket.puts
текст своим клиентам, но как я могу отправить что-то вроде массива? Я хочу отправить целый массив клиенту, но я не уверен, как бы я это сделал.Как отправить ARRAY клиенту в Ruby?
Спасибо!
Вам необходимо сериализовать объект тем или иным способом. Одним из самых популярных способов на сегодняшний день является JSON. Вы можете превратить объект в строку:
require "json"
[:foo, "bar"].to_json
# => "[\"foo\",\"bar\"]"
отправить эту строку, а затем расшифровать его на машине на другом конце:
require "json"
JSON.parse("[\"foo\",\"bar\"]")
# => ["foo", "bar"]
Обратите внимание, что стандарт «JSON» библиотека теряет различие между строкой и символом. Если это имеет значение, тогда найдите аналогичную библиотеку или метод сериализации.
Спасибо. Я не очень хорошо знаком с json - знаете ли вы о каких-либо хороших учебниках? – Yallo
JSON - распространенный формат, а не только для Ruby, поэтому вы найдете много материалов в Интернете. В частности, для Ruby рассмотрим документацию для библиотеки json. – sawa