diff --git a/lib/geocoder/lookups/esri.rb b/lib/geocoder/lookups/esri.rb index cfd37a8aa0bf62cb27b2febcb06eb23be023ad18..9acd0b61fe69812d97aa2ad4d8ad7110ab2387d9 100644 --- a/lib/geocoder/lookups/esri.rb +++ b/lib/geocoder/lookups/esri.rb @@ -32,20 +32,17 @@ module Geocoder::Lookup end def query_url_params(query) + params = { + :f => "pjson", + :outFields => "*" + } if query.reverse_geocode? - { - :location => query.coordinates.reverse.join(','), - :outFields => :*, - :p => :pjson - }.merge(super) + params[:location] = query.coordinates.reverse.join(',') else - { - :f => :pjson, - :outFields => :*, - :text => query.sanitized_text - }.merge(super) + params[:text] = query.sanitized_text end - end + params.merge(super) + end end end diff --git a/test/services_test.rb b/test/services_test.rb index fd0ac30041a6f0051a7b7d3a92081f6a802068cd..906f4fd3edc1f5a05c503179dbbc2eb89e317ae4 100644 --- a/test/services_test.rb +++ b/test/services_test.rb @@ -289,7 +289,7 @@ class ServicesTest < Test::Unit::TestCase query = Geocoder::Query.new([45.423733, -75.676333]) lookup = Geocoder::Lookup.get(:esri) res = lookup.query_url(query) - assert_equal "http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/reverseGeocode?location=-75.676333%2C45.423733&outFields=%2A&p=pjson", + assert_equal "http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/reverseGeocode?f=pjson&location=-75.676333%2C45.423733&outFields=%2A", res end