Как вы избегаете знаков процента при отправке веб-запроса HTTP в CartoDB? - PullRequest
0 голосов
/ 22 февраля 2020

Например:

что-то вроде этого работает:

SELECT * FROM table_1 WHERE field_1 LIKE 'FOO_'

Однако это не так:

SELECT * FROM table_1 WHERE field_1 LIKE 'FOO%'

Я перепробовал каждую escape-последовательность, которую смог найти , Tt либо не работает, либо запрос HTML интерпретирует% до запроса.

Ответы [ 2 ]

1 голос
/ 23 февраля 2020

Вам нужно заключить запрос в функцию encodeURIComponent

let query = encodeURIComponent(
  "select admin from public.ne_adm0_europe where admin like 'Ger%'"
)

let url = `https://cartojs-test.carto.com/api/v2/sql?q=${query}`

fetch(url)
  .then((response) => response.json())
  .then((myJson) => console.log(myJson));
0 голосов
/ 22 февраля 2020

вы пробовали это:

ВЫБРАТЬ * ИЗ таблицы_1 ГДЕ field_1 НРАВИТСЯ 'FOO% 25'

...