Module: SteamAPI

Defined in:
lib/steamwebapi/steamapi.rb

Class Method Summary collapse

Class Method Details

.get(interface, method, version, args = {}) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 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