Golang으로 WebSocket과 JSON Data 주고받기
Redux Saga로 WebSocket 관련 데이터를 주고받는 테스팅을 하던 도중,
send 메서드를 이용하여, json Data를 보내봤자, Golang에서 Unmarshal error 를 띄우기만
해서 좀 검색을 해본결과,
WebSocket은 string 만 보낼 수 있었다. ( 사실 당연히 직렬화를 해서 보내야됬던게 아닐까.. )
그래서 stringify 를 이용하여, string 형태로 보냈고, 결국 golang에서 받을때는
바이트 배열로 받을 수 밖에 없었다.
어찌됬건, JSON이 mongoDB를 이용할때나, 어떤 데이터 모델들을 사용하기에 편리 하기때문에,
JSON으로 다시 가공하는 간단한 방법을 이용하여 마저 진행하였다.
내가 클라이언트에서 주는 data는 type과 payload 필드를 가지고있고,
저런식으로 struct를 생성할때, 백틱으로 json 태그를 주게되면 자동으로 할당해서 보내준다.
이런식으로, 언마샬을 하여 사용 할 수 있고,
다시 이 buf 라는 데이터를 마샬해서 보내고, 콘솔에서 태그가 제대로 되서 들어가는지를 확인 해보았다.
제대로 합체되서 들어갔다.
네트워크를 조금만 생각해보면 당연히 직렬화를 거쳐서 보냈어야 되는건데,
그걸 그냥 냅다 보내고 고민하고 있던 본인한테 실망감이 좀든다..
자바스크립트를 쓰다보니, 뭔가 다 해줄꺼야라는 ( 자료형을 생각잘안하게되는 )
마인드가 생긴 것같다. 반성하자!