Performance 我可以减少Google Maps JavaScript API v3中的请求量吗?

Performance 我可以减少Google Maps JavaScript API v3中的请求量吗?,performance,google-maps,google-maps-api-3,request,Performance,Google Maps,Google Maps Api 3,Request,我打两个电话。从一个xml文件中,我得到一个位置的长度和语言。先是最近的咖啡馆,然后是最近的学校 $.get('https://maps.googleapis.com/maps/api/place/nearbysearch/xml? location='+home_latitude+','+home_longtitude+'&rankby=distance&types=cafe&sensor=false&key=X',function(xml) { verande

我打两个电话。从一个xml文件中,我得到一个位置的长度和语言。先是最近的咖啡馆,然后是最近的学校

$.get('https://maps.googleapis.com/maps/api/place/nearbysearch/xml?
location='+home_latitude+','+home_longtitude+'&rankby=distance&types=cafe&sensor=false&key=X',function(xml)
{
verander($(xml).find("result:first").find("geometry:first").find("location:first").find("lat").text(),$(xml).find("result:first").find("geometry:first").find("location:first").find("lng").text());
}
);

$.get('https://maps.googleapis.com/maps/api/place/nearbysearch/xml?
location='+home_latitude+','+home_longtitude+'&rankby=distance&types=school&sensor=false&key=X',function(xml)
{
verander($(xml).find("result:first").find("geometry:first").find("location:first").find("lat").text(),$(xml).find("result:first").find("geometry:first").find("location:first").find("lng").text());
}
);
但正如你所看到的,我做了两次verander函数(纬度,经度)

是否可以在一个请求中(可能通过阵列)推送这两个位置?我知道这听起来很傻,但我真的很想知道他们是否是减少谷歌地图请求的后门

FTR:这就是谷歌的请求:

在适用于Maps API的使用限制的上下文中,什么构成了“地图加载”?在以下情况下会发生单个贴图加载:
  • a。当网页或应用程序加载地图时,使用地图JavaScript API(V2或V3)显示地图

  • b。街景全景由未显示地图的网页或应用程序使用地图JavaScript API(V2或V3)显示

  • c。加载Flash地图API的SWF由网页或应用程序加载

  • d。从静态映射API发出一个映射图像请求

  • e。从街景图像API发出一个全景图像请求


所以我恐怕这是不可能的,但是,嘿,建议总是受欢迎的

两次调用PlacesAPI,两次加载streetview。这是四个电话,但我想如果你在一个页面上加载,他们只会把这两个街景算一次。此外,您的位置呼叫将是客户端的,因此它们不会计入您的限制

但要回答您的问题,没有环孔可以绕过双重负载,因为您希望向用户显示两个街景

我要做的是在客户要求之前不加载任何内容。取而代之的是一些调用操作类型的按钮,比如
单击此处查看附近的咖啡馆
,当单击时,它们将调用附近的搜索并加载街景。而且,由于这只是在客户端请求时,你的页面加载将永远不会像搜索引擎抓取你的站点那样增加使用率

更多关于这些使用限制的信息 Google Places API的用法与地图不同

  • 允许具有API密钥的用户1 每24小时有000个请求
  • 允许通过API控制台验证其身份的用户100 每24小时有000个请求。通过在控制台中启用计费功能,需要使用信用卡进行验证。我们索要您的信用卡纯粹是为了验证您的身份。使用Places API不会对您的卡收费
如果你核实自己,每天有100000个请求。那很不错

至于谷歌地图

你每天会收到25000份地图,上面写着

为了适应出现短期使用高峰的站点,只有在给定站点连续超过限制90天以上时,使用限制才会对该站点生效

所以,如果你仔细看一看,他们似乎不会介意



p、 在
zoom:1
zoomControl:false
之后有一个额外的逗号,它们不应该在那里。将在某些浏览器(如IE)中导致错误。在
var panoramoptions={…}
之后和
map=new

之前,您会两次调用places api并两次加载streetview。这是四个电话,但我想如果你在一个页面上加载,他们只会把这两个街景算一次。此外,您的位置呼叫将是客户端的,因此它们不会计入您的限制

但要回答您的问题,没有环孔可以绕过双重负载,因为您希望向用户显示两个街景

我要做的是在客户要求之前不加载任何内容。取而代之的是一些调用操作类型的按钮,比如
单击此处查看附近的咖啡馆
,当单击时,它们将调用附近的搜索并加载街景。而且,由于这只是在客户端请求时,你的页面加载将永远不会像搜索引擎抓取你的站点那样增加使用率

更多关于这些使用限制的信息 Google Places API的用法与地图不同

  • 允许具有API密钥的用户1 每24小时有000个请求
  • 允许通过API控制台验证其身份的用户100 每24小时有000个请求。通过在控制台中启用计费功能,需要使用信用卡进行验证。我们索要您的信用卡纯粹是为了验证您的身份。使用Places API不会对您的卡收费
如果你核实自己,每天有100000个请求。那很不错

至于谷歌地图

你每天会收到25000份地图,上面写着

为了适应出现短期使用高峰的站点,只有在给定站点连续超过限制90天以上时,使用限制才会对该站点生效

所以,如果你仔细看一看,他们似乎不会介意



p、 在
zoom:1
zoomControl:false
之后有一个额外的逗号,它们不应该在那里。将在某些浏览器(如IE)中导致错误。您在
var panoramoptions={…}
之后和
map=new

之前也缺少分号,谢谢您的全面回答!你让我更好地理解了请求和映射加载方式之间的区别。我会等一等,也许有人有更好的答案(但我怀疑;))。那我就批准你的感谢您的额外语法更正!谢谢你全面的回答!你让我更好地理解了请求和映射加载方式之间的区别。我会等一等,也许有人有更好的答案(但我怀疑;))。那我就批准你的谢谢你的补充语法
function verander(google_lat, google_lng)
  {
        var bryantPark = new google.maps.LatLng(google_lat, google_lng);
        var panoramaOptions = 
        {
            position:bryantPark,
            pov:
            {
                heading: 185,
                pitch:0,
                zoom:1,
            },
            panControl : false,
            streetViewControl : false,
            mapTypeControl: false,
            overviewMapControl: false   ,
            linksControl: false,
            addressControl:false,
            zoomControl : false,
        }
        map = new google.maps.StreetViewPanorama(document.getElementById("map_canvas"), panoramaOptions);
        map.setVisible(true);
  }