javascript — прячется ключ от API Carto Sql Api?

В настоящее время я загружаю таблицу carto, содержащую полигоны, на свою карту в файле php, используя catro.js, и ключ виден в javascript. Пример, приведенный ниже, для вызова sql api.

var layerStyle = $('#landuse-style').text();
cartodb.createLayer(CartoDbLib.map, {
user_name: 'sandyjones',
type: 'cartodb',
sublayers: [{
sql: "SELECT * FROM master " + query,
cartocss: layerStyle,
}],
extra_params: {
map_key: "myAPiKey"}
}

как скрыть этот ключ API на моем сервере, используя прокси-файл php или внутренний php-файл, если вы можете предложить пример кода, который я могу использовать.

Некоторое время назад я пытался, но я застрял с проблемой, что в URL-адресе изображений с сервера карт будет содержать ключ карты.

0

Решение

Боюсь, вам нужно создать свой собственный прокси. Вот пример прокси на основе node.js: https://github.com/CartoDB/cartodb-api-proxy , но это не поддерживаемый код и, вероятно, он даже устарел.

Если ваши данные таблицы в любом случае общедоступны (и они будут общедоступны — также через прокси-сервер), то я бы определил таблицу как «Общедоступную» в веб-карте Carto, тогда вашему приложению вообще не нужно добавлять ключ API к запросу.

0

Другие решения

Других решений пока нет …