2012-07-05 5 views
1

socket.io를 소용돌이 치고 있습니다. 웹 소켓을 사용해서는 안되며해야 할 일에 대해 궁금합니다.웹 소켓 (Socket.io) 및 인증/인증

예를 들어 websocket을 인증하는 방법이 있습니다 (모든 메시지에 id를 포함시킬 수 있습니까?)? 사람들이 새 문서를 만들 수있는 앱처럼 'Google 문서 도구'를 만들고 있다고 가정 해 보겠습니다. AJAX를 사용하여 웹 소켓 대신 새 문서를 작성해야합니까? 그렇게하면 표준 HTTP 전송 계층을 사용하여 모든 사용자 권한 부여 (세션 확인 등)를 수행 한 다음 websocket 이벤트로 페이지를 간단히 핑 (ping) 할 수 있습니다. 이런 상황을 사람들이 어떻게 처리하는지 궁금해.

답변

0

웹 소켓이 절대적으로 필요하지 않은 곳이라면 AJAX를 사용하는 것이 좋습니다. 웹 소켓은 서버 측에 더 많은로드를 생성하게됩니다 (웹 소켓 & 플래시 소켓을 사용할 수없는 경우 socket.io는 폴백을 처리합니다). 간단히 말해 클라이언트에 대한 상태/연결을 유지해야하는 웹 소켓을 사용하십시오.

웹 소켓을 사용하려면 socket.io와 함께 쿠키를 사용하는 것이 세션을 추적 할 수있는 한 가지 방법입니다. 바로 socket.io를 사용하지 않으면 req.sessionID (key)를 클라이언트에 보내고 세션 정보를 Redis/Mongo 등에 저장할 수 있습니다. socket.io 연결을 시도하면 쿠키 값 &을 읽습니다. 서버 - 세션 저장소 정보를 얻을 수 있습니다. 대체품 중 하나로 플래시 소켓을 사용하면 문제가 발생할 수 있습니다.

희망이 도움이됩니다.

+0

쿠키 + socket.io에 대한 도움말 주셔서 감사합니다. 내부 실시간 앱이므로 폴백은별로 문제가되지 않습니다. – Msencenb