如何封送数据并在websocket上发送?

Upon debugging below server side code:

    type myStruct struct {
        key   string
        value string
    }

    key, value := gen()
    data := myStruct{key, value}
    myJSON, err := json.Marshal(data)
    err = conn.WriteMessage(websocket.TextMessage, myJSON)

gen() populates key and value with strings

myJSON shows:

enter image description here

After writing myJSON on web socket, empty json is received on client side:

            ws.onmessage = function (evt)
            {
                console.log(evt.data)

            };

enter image description here

Why conn.WriteMessage() does not transfer data(myJSON) to client side?

@zerkms is right, you have to have something like this:

type myStruct struct {
    Key   string `json:"key"`
    Value string `json:"value"`
}

key, value := gen()
data := myStruct{Key: key, Value: value}
myJSON, err := json.Marshal(data)
err = conn.WriteMessage(websocket.TextMessage, myJSON)

You can find simple example here.