socket.io 정리

socket.io 말만 듣고 이게 뭔가 javascript 기술이구나… 하고 무시해왔다. 난 자바스크립트가 싫어서 자바스크립트 관련 내용은 쳐다도 안봤는데, 웹의 시대가 계속 되고 있는지라 자바스크립트는 세를 계속 늘려가고있고, Backend 기술에만 관심을 갖다보니 실제로 재밌는걸 해볼수 있는게 별로 없더라. 어쩔수 없이 자바스크립트에 깔짝깔작대다가, 17년부터는 마음 편하게 자바스크립트를 받아들이고 있다. 이젠 심지어 node.js까지 발을 들여놓고 있다. ( 그런데, 왜이렇게 멀리했나 싶을정도로 깔끔하고, 강력하다. )

socket.io도 역시나 훌륭하다.

io.on 뒤로 ‘connection’ 이벤트 발생시 처리할 함수 세트를 나열해주고…
그 내용에는 어떤 이벤트에 대해서 처리해줄 것인지 구현하면 된다.
이게 끝이다.

 

참고로 Socket.io에 예약되어있는 기본 이벤트는 아래와 같다.

List of Socket.io Events

Client-side events for socket.io object:

  • connect. Fired upon a successful connection.
  • connect_error. Fired upon a connection error.
    Parameters:

    • Object error object
  • connect_timeout. Fired upon a connection timeout.
  • reconnect. Fired upon a successful reconnection.
    Parameters:

    • Number reconnection attempt number
  • reconnect_attempt. Fired upon an attempt to reconnect.
  • reconnecting. Fired upon an attempt to reconnect.
    Parameters:

    • Number reconnection attempt number
  • reconnect_error. Fired upon a reconnection attempt error.
    Parameters:

    • Object error object
  • reconnect_failed. Fired when couldn’t reconnect within reconnectionAttempts

Client-side events for socket object:

  • connect. Fired upon connecting.
  • error. Fired upon a connection error
    Parameters:

    • Object error data
  • disconnect. Fired upon a disconnection.
  • reconnect. Fired upon a successful reconnection.
    Parameters:

    • Number reconnection attempt number
  • reconnect_attempt. Fired upon an attempt to reconnect.
  • reconnecting. Fired upon an attempt to reconnect.
    Parameters:

    • Number reconnection attempt number
  • reconnect_error. Fired upon a reconnection attempt error.
    Parameters:

    • Object error object
  • reconnect_failed. Fired when couldn’t reconnect within reconnectionAttempts

Server-side events:

  • connection / connect. Fired upon a connection.
    Parameters:

    • Socket the incoming socket.

 

mango trader 개발 노트 #1

심심풀이로 비트코인 api를 이용해 개발하다보니, 관심사가 계속 늘어나서 안하던걸 손대고 있다. 내가 뭐 항상 이런식이지만…

덕지덕지 기능을 추가하다보니, 아래와 같은 그림이 되어간다.

화면은 동적으로 표시했으면 해서 react를 공부했다. 대략 일주일 해서 감만 잡은 상태, 과거에 angular2를 잠깐 봤었는데 도움이 되긴 한다. angulr2보단 훨씬 간단하고 가벼운 느낌이다.

django는 꾸역 꾸역 계속 해오던지라 할만 했는데, 데몬을 덜려야하는 상황이라… 이것저것 고민하다가 django custom management commad를 작성하고, 웹 인터페이스는 rest 모듈을 가져다 붙였다.

react화면에 티커를 만들어야했는데, django는 그게 없는모양이다. pushpin이라는 라이브러리가 있는데, windows에서는 불가하다고 하여 ㅠㅠ

머리를 굴러보다가nodejs에서 express를 써보기로 하였다.

일종의 gateway역할을 하게 될것같다.

이제 한가지… react에서의 커맨드를 직접 dajngo로 날릴까, express로 날릴까….

 

이것저걱 붙이다보니 구조가 좀 변태같다. ㅋㅋ