我遇到了一个问题,我从谷歌地图API(V3)中获得414 (Request-URI Too Large)
状态,这基本上意味着我的GET请求中的查询字符串太长。问题是,这个GET请求是由DirectionsService route function自动创建的,所以我不太确定我是否能以任何其他方式执行此操作。有问题的代码:
//Setup a request object
var request = {
origin: p1, //Point 1
destination: p2, //Point 2
optimizeWaypoints: true,
travelMode: google.maps.TravelMode.DRIVING
};
//If we're editing a route that has been previously saved to file
if(editing !== false){
//Specify the waypoints
request.waypoints = routePoints;
}
directionsService.route(request, function(response, status) {
//Etc.
});
我遵循这种方法,将先前保存的航点从this answer附加到另一个问题的请求对象上。基本上,request.waypoints
应该是包含地图上点的对象数组。但是,在更长的路线上,这个阵列有时会增长到200多个点,这显然解释了我得到的414个代码。
答案 0 :(得分:1)
允许的最大航点为8,加上原点和目的地。 Maps API for Business客户可以使用23个航点,以及原点和目的地。公交路线不支持航点。
Google Maps API Reference: DirectionService
因此,您不能将DirectionsService.route
与包含200个航点的请求一起使用。