Хорошо, прошло много дней. Я собираюсь туда и обратно с этим api и хотел бы получить следующие результаты.Как взять эти данные из api и написать функцию
В этом проблема.
uri = URI('https://api.wmata.com/StationPrediction.svc/json/GetPrediction/All')
uri.query = URI.encode_www_form({'api_key' => 'ihaveit',})
request = Net::HTTP::Get.new(uri.request_uri)
@response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
http.request(request)
@data = JSON.parse @response.body
Теперь у меня @data анализируется как JSON. Я пытаюсь написать класс Поезда и использовать следующие данные.
{
"Car": "6",
"Destination": "SilvrSpg",
"DestinationCode": "B08",
"DestinationName": "Silver Spring",
"Group": "1",
"Line": "RD",
"LocationCode": "A01",
"LocationName": "Metro Center",
"Min": "3"
},
Вот код класса поездов
class Trains
def initialize(car, destination, destinationcode, destinationname, group, line, locationcode, locationname)
@car = car
@destination = destination
@destinationcode = destinationcode
@destinationname = destinationname
@group = group
@line = locationcode
@locationname = locationname
end
И теперь им застрял о следующем шаге. Я совершенно не знаком с api. Я могу написать следующее для статического класса.
def to_s
puts(@car + @destination + @destinationcode + @destinationname + @group + @line + @locationname)
end
= Trains.new
puts Train
end
У меня это до сих пор.
class TrainLoader < Struct.new(:car, :destination, :destinationcode, :destinationname, :group, :line, :locationcode, :locationname)
class Trains
end
t = Trains.new(@data["Car"],@data["DestinationCode"], @data[DestinationName],@data[Group],@data[Line], @data[LocationCode], @data[LocationName], @data[Min])
Что здесь вопрос? –
Позвольте мне еще раз перефразировать мой вопрос. – manshu
Я вижу запрос успеха с данными, какую функцию вы хотите написать? –