Method: ZipCodeServices.zipcode

Defined in:
lib/zipcodeservices.rb

.zipcode(zip) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/zipcodeservices.rb', line 22

def zipcode(zip) 
  #/{apikey}/{zipcode}
  response = Typhoeus::Request.get( "#{base_uri}/zipcodes.svc/#{apikey}/#{zip}") 
if response.code == 200 
    if data_format == :xml
      j = MultiXml.parse(response.body)
      raise "BAD API KEY" if j.first[1].first[1]["City"] == nil
    else
      j = JSON::parse(response.body)
      raise "BAD API KEY" if j.first[1]["City"] == nil 
    end
    j
  elsif response.code == 404
    nil 
  else 
    raise response.body 
  end 
end