Module: AddressSearcher

Defined in:
lib/address_searcher.rb,
lib/address_searcher/version.rb

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.search_address(zipcode, full_address: false) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/address_searcher.rb', line 9

def self.search_address(zipcode, full_address: false)
  url = URI.parse("https://zip-cloud.appspot.com/api/search?zipcode=#{zipcode}")
  
  response = Net::HTTP.get_response(url)
  if response.is_a?(Net::HTTPSuccess)
    # レスポンスが正常な場合の処理
    body = response.body
    hash = JSON.parse(body)

    puts body
    if full_address
      puts hash["results"]
      hash["results"].each do |result|
        full_address = "#{result["address1"]}#{result["address2"]}#{result["address3"]}"
        full_kana = "#{result["kana1"]}#{result["kana2"]}#{result["kana3"]}"

        result["full_address"] = full_address
        result["full_kana"] = full_kana
      end
    end
    
    hash
  else
    raise "エラーが発生しました。status: #{response.code}, message: #{response.message}"
  end
end