Google Maps Embed API Current Location 作为 iframe 的起点
Posted
技术标签:
【中文标题】Google Maps Embed API Current Location 作为 iframe 的起点【英文标题】:Google Maps Embed API Current Location as starting point with iframe 【发布时间】:2017-02-14 10:19:10 【问题描述】:我想要做的是将地址设置为目的地和原点(起点)我发现将当前位置作为原点,但它似乎不起作用,我也尝试了我的位置,当前地址,因为我在意大利,我也尝试过使用意大利语,但都一样,任何人都知道是什么正确的命令作为原点,所以它会自动获取用户位置作为起点
.maps
width: 600px;
height: 200px;
border: 0;
<iframe allowfullscreen="" class="maps" frameborder="0" id="mapnavi" name="mapnavi" src="https://www.google.com/maps/embed/v1/directions?
origin=current+location
&destination=rome
&key=AIzaSyC-5CY9mOCeg5Y3IhPqi_Yd0-DZtWrJl-E">
</iframe>
【问题讨论】:
【参考方案1】:您可以使用Geolocation API 获取当前位置,然后以纬度、经度格式使用它。
例如,它可能看起来像https://www.google.com/maps/embed/v1/directions?origin=40.871579,14.2878583&destination=Rome
【讨论】:
是的,我刚刚从 google 支持处发现 i frame 无法做到这一点 |Google Maps Embed API|他们不打算添加此功能,必须使用 javascript Maps API 无论如何,无论是 Javascript 还是 Ember API,您都需要一种方法来检测当前位置并将其作为参数发送。这两个 API 都不会理解诸如“当前位置”、“我的位置”或“当前地址”之类的东西,因为这些值对于远程 Web 服务器没有任何意义。见developers.google.com/web/fundamentals/native-hardware/…【参考方案2】:尝试在您的目的地使用 PlaceID,以便当前位置在您的原点中起作用。
<iframe
frameborder="0" style="border:0" src="https://www.google.com/maps/embed/v1/directions?
origin=Current%20Location&destination=place_id:ChIJu46S-ZZhLxMROG5lkwZ3D7k&key=YOUR_API_KEY"
allowfullscreen></iframe>
罗马 PlaceID = ChIJu46S-ZZhLxMROG5lkwZ3D7k
使用此地点 ID documentation 获取您目的地的地点 ID。
【讨论】:
不,Google 支持人员告诉我,目前不支持此功能,他们也没有计划支持。必须使用 JavaScript 地图 API【参考方案3】:这三个参数之一应该可以工作:
&origin=lat,lang
&center=lat,lang
&ll=lat,lang
只需在您的 src URL 末尾添加这些参数之一,并带有您想要的纬度和经度。
【讨论】:
以上是关于Google Maps Embed API Current Location 作为 iframe 的起点的主要内容,如果未能解决你的问题,请参考以下文章
Google Maps Embed API Current Location 作为 iframe 的起点
Google Maps Place API 和 Google Maps Time Zone API 之间的区别
Google Analytics Embed Api 服务器端授权 C#
Google Maps API DirectionsService.route 与 Google Maps Directions 不同