2017-04-26 80 views
-2

有没有人知道从Ruby调用Google Maps API的方式?Google Maps API可以通过Java,Python或Ruby访问吗?

+0

你可以从这里开始(https://github.com/edwardsamuel/google-maps-services-ruby/blob/master/README.md)。 – Gerry

+0

我可能会从一个真实的项目中共享工作轨道代码 - 但它的功能有限,只是在地图中将地点显示为图片文件,并在点击地图时打开地图模式。 – marmeladze

+0

请阅读“[问]”,包括链接页面,“[mcve]”和“[Stack Overflow用户需要多少研究工作?](http://meta.stackoverflow.com/questions/261592)”。我们希望看到你的努力的证据。你尝试了什么?你搜索并没有找到任何东西?你有没有找到东西,但它没有帮助?你有没有尝试写代码?如果不是,为什么?如果是这样,那么最小的代码示例显示了您尝试的内容以及它为什么不起作用?没有它,看起来你没有尝试,并希望我们为你写一个教程和代码。 –

回答

1

使用密钥,您可以通过简单的HTTPS请求访问API,您可以使用open-uri发送该请求,并使用json进行解析。

require 'open-uri' 
require 'ostruct' 
require 'json' 

def journey_between start, destination 
    key = "[Visit https://developers.google.com/maps/web/ to get a free key]" 

    url = "https://maps.googleapis.com/maps/api/distancematrix/json?units=imperial&origins=#{start}&destinations=#{destination}&key=#{key}" 

    json_response = open(url).read 
    journey_data = JSON.parse(json_response, object_class: OpenStruct).rows[0].elements[0] 
    return journey_data 
end 

journey = journey_between "London", "Glasgow" 

puts journey.distance.text 
#=> "412 mi" 

puts journey.duration.text 
#=> "6 hours 46 mins" 

不幸的是,你不能在没有API密钥的情况下尝试这个例子。您可以通过在您的Google帐户下注册项目免费获得https://developers.google.com/maps/web/

+0

问题是离题。 https://meta.stackoverflow.com/questions/256328/vote-to-close-unclear-questions-immediately-after-commenting and https://meta.stackoverflow.com/questions/260263/how-long-should-我们等待海报来澄清问题之前的问题是适用的。 –

相关问题