module SteamAPI

Public Class Methods

get(interface, method, version, args = {}) click to toggle source
# File lib/steamwebapi/steamapi.rb, line 7
def self.get(interface, method, version, args = {})
  if args.empty?
    raise 'cannot retrieve data without arguments'
  else
    i = ''
    args.each do |key, value|
      # the first argument needs ? in front of it
      if key == args.keys[0]
        i += "?#{key}=#{value}"
      else
        i += "&#{key}=#{value}"
      end
    end
    domain = "http://api.steampowered.com/#{interface}/#{method}/#{version}/#{i}"
  end
  uri = Net::HTTP.get(URI(domain))
  case args.key('format')
  when 'xml'
    uri
  when 'vdf'
    uri
  else
    JSON.parse(uri)
  end
end