Używam Sockjsa z Go, ale kiedy klient javascript wysyła json do serwera, wymyka się temu i wysyła go jako bajt []. Próbuję dowiedzieć się, jak przeanalizować json, aby móc odczytać dane. ale dostaję ten błąd.Jak odrzucić ciąg znaków JSON z unikniętym hasłem w programie Go?
json: nie unmarshal ciąg do wartości Go typu main.Msg
Jak mogę rozwiązać ten problem? html.UnescapeString() nie działają:/
val, err := session.ReadMessage()
if err != nil {
break
}
var msg Msg
err = json.Unmarshal(val, &msg)
fmt.Printf("%v", val)
fmt.Printf("%v", err)
type Msg struct {
Channel string
Name string
Msg string
}
//Output
"{\"channel\":\"buu\",\"name\":\"john\", \"msg\":\"doe\"}"
json: cannot unmarshal string into Go value of type main.Msg
Warto również zauważyć, że html.UnescapeString() jest dla podmiotów HTML, takich jak
gregghz