从可能的Google我的商家地址

时间:2016-09-13 13:26:39

标签: javascript api google-maps google-maps-api-3

我目前正在整合Google Maps Javascript API。我希望用户能够键入地址并为他生成“google street view”地图。优选地,这张街景地图应该在办公楼“内部”看。例: 我在Google地图中搜索“Zar Restaurant& Bar,RosenheimerStraße,德国慕尼黑”(链接:https://www.google.bg/maps/place/Zar+Restaurant+%26+Bar/@48.1141096,11.6115833,17z/data=!3m1!4b1!4m5!3m4!1s0x479ddf9443819fc1:0xb242780e5bdc5ce5!8m2!3d48.114106!4d11.613772?hl=en)。找到了一项业务,如果您单击侧面板中的图像,则会在餐厅内显示三维视图。 或者,如果使用相同的关键字进行Google自然搜索,则会在右侧显示商家信息,并且会显示一个“看到里面”的按钮,可以帮助您进行搜索。我希望在网站上实现这样的三维视图(显示内部视图),如下所示:http://www.zar-bar.de/galerie.php。我确信这可以通过嵌入iframe google为您轻松实现,但我不想使用此方法。

问题:如何通过Google Maps Javascript API在商家内部获得相同的3D视图? 我知道当你输入lat& amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; LNG。我设法找到了所需的lat& amp;来自他们的工具:https://developers.google.com/maps/documentation/embed/start。从这里,我看到了lat&来自iframe src中的params,就在imag下方。然后我把坐标放在谷歌地图js api,它的工作原理。工作代码:

google.maps.event.addDomListener(window, 'load', initialize);

function initialize() {
    var position = {lat: 48.1141, lng: 11.6138};
    var map = new google.maps.Map(document.getElementById('someDiv'), {
            center: position,
            zoom: 14
    });
    var panorama = new google.maps.StreetViewPanorama(
            document.getElementById('someDiv'), {
            position: position,
            pov: {
                    heading: 240,
                    pitch: 10
            }
    });
    map.setStreetView(panorama);
}

JS小提琴:https://jsfiddle.net/cdfnvrj0/3/。这让我相信我需要得到lat&来自一个地址。

我尝试了什么:

请求使用Google Maps地理编码API获取lat&来自具有以下请求URL的地址: “https://maps.googleapis.com/maps/api/geocode/json?address=Zar%20Restaurant%20Bar,%20Rosenheimer%20Stra%C3%9Fe,%20Munich,%20Germany%20&key=AIzaSyBLASrj4k7gOpG62kdBWwGrGyHnfM71FT4” 此API查找地址并返回一些地理位置数据,但是当我将这些坐标放在我的谷歌地图JS api中时,显示的位置并不完全相同。它把我放在街上的某个地方,而不是搜索到的商家的三维视图。这让我相信这个API会根据地址返回地理位置,而不是业务地址,即不适用于企业。那么,如何确定是否存在与给定地址相对应的Google My Business地址(通过API),如果有这样的业务,我怎样才能知道它是否具有“内部视图”,以及如何我可以把它的lat& lng放在地图上吗?目前Google API是否可以使用它?

我非常感谢所有的反馈和建议。谢谢你的时间。

1 个答案:

答案 0 :(得分:0)

geocoder用于邮寄地址。要查找“地点”(如“Zar餐厅酒吧”),请使用Places API

“Zar Restaurant Bar,RosenheimerStraße,德国慕尼黑”的API结果:

Rosenheimer Str。 240,81669München,德国(48.114106,11.61377200000004)

“Zar Restaurant Bar,RosenheimerStraße,德国慕尼黑”的Geocoder API结果:

Rosenheimer Str。,München,Germany(48.1232636,11.602944500000035)[“GEOMETRIC_CENTER”/“partial_match”]