Как использовать API Google Place в Ruby? - PullRequest
0 голосов
/ 23 августа 2011

Следующий код Ruby приводит к «сбросу соединения по пиру»

request = 'https://maps.googleapis.com/maps/api/place/search/json?location=23.001202,120.191889&radius=50&sensor=false&key=MY_GOOGLE_API_ACCESS_KEY'
puts Net::HTTP.get(URI.parse request)

Но тот же HTTP-запрос работает в браузере.Что может быть причиной различий?

Автоответчик: только что нашел решение, используя Ruby HTTP-клиент - Patron

require 'patron'
sess = Patron::Session.new
sess.base_url = "https://maps.googleapis.com/"
res = sess.get "maps/api/place/search/json?location=23.001202,120.191889&radius=50&sensor=false&key=GOOGLE_PLACE_API_KEY"
puts res.body

1 Ответ

1 голос
/ 23 августа 2011

Это может быть немного убито, но я только что сделал это:

require 'rubygems'
require 'open-uri'
require 'json'
require "awesome_print"


baseurl = "https://maps.googleapis.com/maps/api/place/search/json?"
lat = 51.50364209455692.to_s
lng = -0.10880472473149894.to_s
radius = 500.to_s
type = "bar"
sensor = "true"
key = "MYKEY"

combine = baseurl + 'location=' + lat + ',' + lng  + '&' + 'radius=' + radius + '&' + "types=" + type + '&' + "sensor=" + sensor +  '&' + "key=" + key

url = combine
result = open(url) do |file|
  JSON.parse(file.read)
end

Этот магазин представляет собой хэш JSON, с которым вы можете делать все, что захотите!

Также у меня естьЯ провел небольшое исследование по API локального поиска - Google Места на мой взгляд не так уж хороши - Вы можете получить гораздо больше результатов (бесплатно) от SimpleGeo

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...