Articles of partire

Assegna la struttura con un’altra struttura

Ho una struttura RegistrationRequest: type RegistrationRequest struct { Email *string Email2 *string Username *string Password *string Name string } Dove Email2 è il valore email inserito di nuovo per verificare che l’utente inserito sia corretto. Ho anche una struct User: type User struct { Email *string Username *string Password *string Name string } Ovviamente, non […]

JSON Unmarshal con campi sconosciuti

Ho il seguente JSON {“a”:1, “b”:2, “?”:1, “??”:1} So che ha i campi “a” e “b”, ma non conosco i nomi di altri campi. Quindi voglio unmarshal nel seguente tipo: type Foo struct { // Known fields A int `json:”a”` B int `json:”b”` // Unknown fields X map[string]interface{} `json:???` // Rest of the fields should […]

go build funziona bene ma va eseguito non riesce

Ho alcuni file nel pacchetto principale sotto una directory: main.go config.go server.go Quando lo faccio: “go build” il programma si basa perfettamente e funziona bene. Quando lo faccio: “go run main.go” fallisce. Produzione: # command-line-arguments ./main.go:7: undefined: Config ./main.go:8: undefined: Server I simboli non definiti sono strutture e sono in maiuscolo, quindi è necessario esportarli. […]

Specifiche: qual è lo scopo dell’identificatore vuoto nell’assegnazione variabile?

Ho trovato questa variabile var _ PropertyLoadSaver = (*Doubler)(nil) e mi chiedo quale sia il suo scopo. Non sembra inizializzare nulla e poiché utilizza un identificatore vuoto immagino che non puoi accedervi.

Come scaricare gli stacktraces goroutine?

Ho uno sfondo Java, e mi piace usare il segnale QUIT per ispezionare il dump del thread Java. Come lasciare che Golang stampi tutta la traccia dello stack delle goroutine?

Cambia i valori mentre si itera in golang

Supponiamo di avere questi tipi: type Attribute struct { Key, Val string } type Node struct { Attr []Attribute } e che voglio ripetere sugli attributi del mio nodo per cambiarli. Mi sarebbe piaciuto poterlo fare: for _, attr := range n.Attr { if attr.Key == “href” { attr.Val = “something” } } ma come […]

Organizzazione di un progetto Go su più file

Nota: questa domanda è correlata a questa , ma due anni sono molto lunghi nella cronologia di Google. Qual è il modo standard per organizzare un progetto Go durante lo sviluppo? Il mio progetto è un singolo pacchetto mypack , quindi suppongo di aver inserito tutti i file .go in una directory di mypack . […]

quali dovrebbero essere i valori di GOPATH e GOROOT?

Sto cercando di installare Doozer in questo modo $ goinstall github.com/ha/doozer Ottengo questi errori. goinstall: os: go/build: package could not be found locally goinstall: fmt: go/build: package could not be found locally goinstall: io: go/build: package could not be found locally goinstall: reflect: go/build: package could not be found locally goinstall: math: go/build: package could […]

Come analizzare / deserlizzare un JSON dinamico in Golang

Scenario: Si consideri quanto segue è il JSON: { “Bangalore_City”: “35_Temperature”, “NewYork_City”: “31_Temperature”, “Copenhagen_City”: “29_Temperature” } Se si nota, i dati sono strutturati in modo tale che non ci sono tasti codificati che menzionano City / Temperature fondamentalmente solo valori. Problema: non sono in grado di analizzare alcun JSON dinamico. Domanda: Qualcuno potrebbe aver trovato […]

Cos’è questa cosa “foo. (Bar.Baz)” nel codice Go?

Per esempio, in questa risposta: https://stackoverflow.com/a/10385867/20654 … if exiterr, ok := err.(*exec.ExitError); ok { … Che cos’è questo err.(*exec.ExitError) chiamato? Come funziona?