Я хочу получить все значения ключа из файла JSON.Например, в:
{
"total_count": 6,
"incomplete_results": false,
"items": [
{
"url": "https://api.github.com/repos/Samhot/GenIHM/issues/6",
"id": 293237635,
"number": 6,
"title": "Rechercher des documents",
"user": {
"login": "Samhot",
"id": 7148311
]
}
Я хотел бы получить:
["total_count", "incomplete_results", "items", "url", "url", "number", "title", "user", "login", "id"]
У меня есть функция, которая возвращает содержимое моего JSON в наблюдаемой:
getConfig(): Observable<any> {
return this.http.get<any>(this.myURL);
}
После этого данные переформатируются с помощью .map
, чтобы получить только ключи с функцией Object.keys()
:
merge()
.pipe(
startWith({}),
switchMap(() => {
return this.getConfig();
}),
map(data => {
return Object.keys(data.items[0]);
}
)
)
.subscribe(data => {
this.dispo = data;
});
Моя проблема в том, что я получаю только ключи, находящиеся на уровнео JSON, о котором я говорил ( data.items [0] ), а не о восходящих или потомках.
Конечно, я могу создавать несколько запросов, но он просит заранее знать структуру JSON, я хочу сделать его универсальным ...
Какможно сделать массив со всеми моими ключами независимо от структуры JSON?
Заранее спасибо!