Výrazy JSONPath

Notace JSONPath popisuje cestu k jednomu nebo více prvkům v dokumentu JSON.

Notace JSONPath se používá v následujících scénářích:

Podporuje se následující podmnožina zápisu JSONPath:

Výraz cesty Description
$ Kořenový objekt
. Vybere zadanou vlastnost v nadřazeného objektu.
Tento zápis použijte, pokud vlastnost neobsahuje speciální znaky.
['property'] nebo ["property"] Vybere zadanou vlastnost v nadřazeného objektu. Ujistěte se, že jste kolem názvu vlastnosti dali jednoduché nebo dvojité uvozovky.
Tento zápis použijte, pokud název vlastnosti obsahuje speciální znaky, například mezery, nebo začíná jiným znakem než A..Za..z_.
[n] Vybere n-ten prvek z pole. Indexy jsou založené na 0.

Poznámka

Zástupné é, rekurze, sjednocení, řezy a aktuální objekt nejsou podporovány.

Příklad

Vzhledem k následujícímu dokumentu JSON:

{
  "Source": "Server-01",
  "Timestamp": "2023-07-25T09:15:32.123Z",
  "Log Level": "INFO",
  "Message": "Application started successfully.",
  "Details": {
    "Service": "AuthService",
    "Endpoint": "/api/login",
    "Response Code": 200,
    "Response Time": 54.21,
    "User": {
      "User ID": "user123",
      "Username": "kiana_anderson",
      "IP Address": "192.168.1.100"
    }
  }
}

Každé pole můžete znázorňovat pomocí zápisu JSONPath následujícím způsobem:

"$.Source"                     // Source field
"$.Timestamp"                  // Timestamp field
"$['Log Level']"               // Log Level field
"$.Message"                    // Message field
"$.Details.Service"            // Service field
"$.Details.Endpoint"           // Endpoint field
"$.Details['Response Code']"   // Response Code field
"$.Details['Response Time']"   // Response Time field
"$.Details.User['User ID']"    // User ID field
"$.Details.User.Username"      // Username field
"$.Details.User['IP Address']" // IP Address field