2017-06-17 1 views
-4

Versuch Wert von Array-Elemente abzuzurufen abzurufen Wert "default-token-k99mq" von unten JSON in go Programm ...Was ist der beste Weg, aus einem JSON-String

const input = `{ 
    "kind": "ServiceAccount", 
    "apiVersion": "v1", 
    "metadata": { 
    "name": "default", 
    "namespace": "mynamespace", 
    "selfLink":   "/api/v1/namespaces/mynamespace/serviceaccounts/default", 
    "uid": "483d1043-4d68-11e7-be08-3a3f3b149220", 
    "resourceVersion": "425039", 
    "creationTimestamp": "2017-06-09T23:06:34Z" 
    }, 
    "secrets": [ 
    { 
     "name": "default-token-k99mq" 
    } 
    ] 
}` 

braucht, um Namen von secrets Array

Antwort

2

Sie diesen https://play.golang.org/p/27eKFmBCHY tun kann

package main 

import (
    "fmt" 
    "encoding/json" 

) 

func main() { 
    const input = `{ 
     "kind": "ServiceAccount", 
     "apiVersion": "v1", 
     "metadata": { 
      "name": "default", 
      "namespace": "mynamespace", 
      "selfLink":  "/api/v1/namespaces/mynamespace/serviceaccounts/default", 
      "uid": "483d1043-4d68-11e7-be08-3a3f3b149220", 
      "resourceVersion": "425039", 
      "creationTimestamp": "2017-06-09T23:06:34Z" 
     }, 
     "secrets": [ 
      { 
       "name": "default-token-k99mq" 
      } 
     ] 
    }` 
    type NameStruct struct { 
     Name string `json:"name"` 
    } 
    type Secret struct { 
     Secrets []NameStruct `json:"secrets"` 
    } 

    secret := Secret{} 
    json.Unmarshal([]byte(input), &secret) 
    fmt.Println(secret.Secrets[0].Name) 
} 
+0

Dank für die schnelle Antwort .. es funktioniert. – user3598326

Verwandte Themen