2017-08-03 2 views
-2

Meine JSON-Antwort kommt wie unten:Parsing JSON eingebettete Struktur

"channels": { 
      "BB0AC397-78AA-41C9-818A-A52A6BC81E9B": { 

       "id": "BB0AC397-78AA-41C9-818A-A52A6BC81E9B", 
       "name": "MyVABotChannel", 
      }, 
      "94612845-7868-4B1C-8E58-7BD88869B197": { 

       "id": "94612845-7868-4B1C-8E58-7BD88869B197", 
       "name": "System_Bot_Test", 


      } 

meine Forderung ist die ID der Struktur zu extrahieren, wo Name MyVABotChannel ist. Die ID ist nicht festgelegt und zufällig, wenn sie vom Server kommen. Wie finde ich die ID, die dem spezifischen Namen entspricht?

+2

In welcher Sprache? Welche JSON-Bibliothek? – Dai

Antwort

1

Javascript Unter der Annahme,

Dieser Code-Schnipsel übernimmt mehrere Einträge mit "MyVABotChannel"

// response = JSON 
var values = Object.values(response.channels); 
var botChannels = values.filter(channel => channel.name === "MyVABotChannel"); 

Dieses Codefragment nimmt einen Eintrag mit "MyVABotChannel"

an
0

Wenn es in JavaScript oder einer Bibliothek ist, die ein JSON-DOM aussetzt, dann etwa so:

var channels = ... 

var key = Object 
    .getKeys(channels) 
    .find(e => chanels[e].name == "MyVABotChannel"); 

if(key == null) { 
    console.log("Couldn't find element."); 
    return; 
} 

var result = channels[key].id; 
console.log(result);