Вопрос по JsonPath

  • Автор темы Автор темы amful
  • Дата начала Дата начала

amful

Client
Регистрация
07.11.2013
Сообщения
32
Реакции
47
Баллы
18
Добрый вечер!
Есть такая строчка в Json
{
"pageInfo": {
"pageName": "abc",
"pagePic": "http://example.com/content.jpg"
}
}
Как получить значение ключей через JsonPath у pageInfo.
На выходе хочу получить ключи pageName, pagePic.
 
Добрый вечер!
Есть такая строчка в Json
{
"pageInfo": {
"pageName": "abc",
"pagePic": "http://example.com/content.jpg"
}
}
Как получить значение ключей через JsonPath у pageInfo.
На выходе хочу получить ключи pageName, pagePic.
Так они же и так сразу залетают
upload_2018-1-5_19-41-11.png
 
Хорошо, а как сами значения ключей получить?

А если еще сложнее вариант:
{
"pageInfo": {
"pageName":{"a":123,"b":456},
"pagePic":{"a":123,"b":456}
}
}

Как выдернуть в переменные сами ключи pageName и pagePic?
 
так вопрос в том, как мне взять ключи, а не значения ключей.
я не знаю сколько у меня их и какие
 
сформулирую по другому)
как мне получить имя САМОГО КЛЮЧА.

в данном случае хочу получить что-то похожее
str[0] = 'pageName'
str[1] = 'pagePic'

Думал что в JsonPath есть метод получить сами ключи, а не их значения
 
формат JSON состоит из объектов и массивов .
Вы обращаетесь к объекту по имени pageName и потом извлекаете значение путем использованием JSONPath
как я ранее показал.


в данном случае хочу получить что-то похожее
str[0] = 'pageName'
str[1] = 'pagePic'

Такое я первый раз вижу что бы json с этим работал как-то
 
в том то и дело, структура странная.
Вот мой пример:

{
"people": {
"ivanov":{"name":dmitry,"age":18},
"petrov":{"name":stepan,"age":22}
}
}

Мне нужно вытащить массив с фамилиями и именами. Если с именем все понятно, то как фамилию получить не понимаю.
Думал можно регуляркой, но и там все не так просто
 
с кавычками, да, ошибся, в ручную набирал.

по этой гифке все так же не понятно как вытащить
[0]ivanov dmitry
[1]petrov stepan
 
с кавычками, да, ошибся, в ручную набирал.

по этой гифке все так же не понятно как вытащить
[0]ivanov dmitry
[1]petrov stepan

Там где [0] [1] используйте в качестве индекса счетчик каждый проход увеличивает на +1
 
ivanov, petrov не фигурируют в значениях нигде, как мне их то вытащить?
 
было бы это реализовано вот так проблем бы не было

{
"people": {
"a":{"surname":"ivanov","name":"dmitry","age":18},
"b":{"surname":"petrov","name":"stepan","age":22}
}
}
 
пробуйте работать с people
Раз у вас такая структура на руках

upload_2018-1-5_23-1-0.png



ivanov petrov по идеи тоже должны иметь свой объект но его тут нету
P.S. с регулярками намучаетесь просто любой пробел символ сломает регулярку
 
  • Оценить
Реакции: amful

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)