@Fox said in JsonPath массивы (кеш):
-App-ID')] no
Вопрос решил через фильтры JSONpath, это было не легко. Но всё как обычно оказалось просто, в модуле JSON есть шпаргалка(линк) на тему с примерами и там как раз есть подходящий фильтр.
У меня есть строка
[{"id": "Хочу закрыть заказ"},{"id": "Хочу закрыть этот заказ"},{"id": "Не могу выполнить этот заказ, не успеваю"}]
Я хочу вытащить от сюда рандомный элемент, но способ $.[[[RANDOM]]] не работает, хотя $.[2] прокатывает.
Как мне в JSONpath переменную вставить?
Как вариант, формировать полный JSONpath в переменной:
[[STRING]] = '[{"id": "Хочу закрыть заказ"},{"id": "Хочу закрыть этот заказ"},{"id": "Не могу выполнить этот заказ, не успеваю"}]'
[[RANDOM]] = 2 //Случайное число
[[JSONPATH]] = '$.[' + [[RANDOM]] + ']' //Полный путь JSONpath
И вставлять переменную [[JSONPATH]]:

У меня есть строка
[{"id": "Хочу закрыть заказ"},{"id": "Хочу закрыть этот заказ"},{"id": "Не могу выполнить этот заказ, не успеваю"}]
Я хочу вытащить от сюда рандомный элемент, но способ $.[[[RANDOM]]] не работает, хотя $.[2] прокатывает.
Как мне в JSONpath переменную вставить?
Попробуйте использовать круглые скобки
$.[([[RANDOM]])]