Ограничить длину запроса в Fusion Tables? - PullRequest
1 голос
/ 08 февраля 2012

Я пытаюсь получить данные из таблицы Fusion, используя оператор «IN». Когда я смотрю в очень большую строку (2000+ почтовых индексов), ничего не возвращается. Когда я смотрю в короткую строку (два почтовых индекса), она работает правильно.

Например, это работает:

var zip = "76364,76373";
layer = new google.maps.FusionTablesLayer(tableid);
layer.setQuery("SELECT 'geometry' FROM " + tableid + " WHERE ZIP IN("+zip+")");
layer.setMap(map);

Но это не так:

var zips = <?php echo $zips; ?>; //$zips is a JSON array
zips = zips.join();
layer = new google.maps.FusionTablesLayer(tableid);
layer.setQuery("SELECT 'geometry' FROM " + tableid + " WHERE ZIP IN("+zips+")");
layer.setMap(map);

Я получаю ошибку 400 в Firebug.

Мне не удалось найти ограничение в документации Google.

1 Ответ

2 голосов
/ 08 февраля 2012

Звучит так, как будто вы достигли максимальной длины URL (2048 символов).

Запрос, отправленный на слой Fusion Tables, добавляется в URL каждого изображения мозаики.Если запрос слишком длинный, то URL-адрес каждого изображения мозаики превышает ограничение URL-адреса, и изображение не будет отображаться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...