Я получаю данные ответа REST с URL-адреса. Затем я записываю его в файл JSON, однако он помещается в одну строку в длинной строке, и мне нужно иметь его в читаемом формате в файле JSON.Ruby API - JSON Parsing - Запись в файл
Мой код:
require 'rubygems'
require 'json'
require 'rest-client'
class Rest
def self.getData
response = RestClient.get 'http://jsonplaceholder.typicode.com/posts'
response = JSON.parse(response)
File.open('/Users/robertreed/RubymineProjects/draft/posts.json', 'w') do |f|
f.write(response.to_json)
end
puts response
end
getData
end
Это печать на консоль и записи в файл JSON на одной строке:
[{"userId"=>10, "id"=>100, "title"=>"at nam consequatur ea labore ea harum", "body"=>"cupiditate quo est a modi nesciunt}]
Любые предложения о том, как я могу добиться этого?
Если вы сохраняете JSON в «симпатичном формате», чтобы позволить людям редактировать его, вы должны использовать YAML. Это гораздо более читаемо. JSON отлично подходит для передачи данных между приложениями, но форматирование его для удобства чтения может действительно увеличить размер файла, в результате чего он будет использовать больше ЦП, большую пропускную способность сети и время приложения. –
Не называйте класс «Отдых». «RestResponse» будет лучше, поскольку классы должны быть «вещами». Вместо 'getData' вы должны использовать' get_data'. В Ruby мы используем snake_case для обозначения переменных и методов. Вместо 'open' и' write' в блоке просто используйте 'File.write ('file.txt', response.to_json)'. –
Это звучит как хороший совет, я не совсем уверен, что я буду использовать JSON для того, чтобы просто присоединиться к новой команде QA, и я только использовал xml для хранения параметров в переданном. Но ему сказали заглянуть в него. – Speedychuck