socket.io 통해 요청을 받을 준비를 합니다. 여기서는 연결이라는 한 가지 유형의 메시지만 받을 것으로 예상됩니다. soccer.io 통해 연결하면 여기에서 콘솔에 정보를 기록합니다. 코드를 시작하기 전에 socket.io 대한 아이디어를 신속하게 설명하고 싶습니다. 그것은 우리가 많은 것들을 단순화 할 수있는 라이브러리이지만, 당신은 `마법`이라고 생각하는 것은 틀렸을 것입니다. 그러나 socket.io 실시간 통신을 허용하는 여러 가지 기술에 기반을 두고 있습니다(그리고 이들 중 일부는 수년 동안 계속되어 왔습니다). 가장 잘 알려진 가장 최근의 것은 WebSocket입니다. 하지만 클라이언트에서 서버로 데이터를 다른 방식으로 보내고 싶을 때 어떻게 해야 할까요? socket.emit() 및 socket.on() 메서드를 모두 사용하는 마지막 예제와 매우 유사합니다. 각 클라이언트에 대한 정보(예: 사용자 이름)를 기억합니다. 이를 위해서는 세션 변수가 필요합니다. 기본 페이지가 로드됩니다.

그러면 컴퓨터가 socket.io 연결을 열고 서버가 콘솔에 디버깅 정보를 표시해야 합니다 socket.io. 다음으로, 우리는 클라이언트 측에서 동일한 작업을 수행 할 것입니다. 여기서 io 개체는 socket.io 라이브러리에 대한 액세스를 제공합니다. IO 개체는 이제 우리의 응용 프로그램에 대한 각 연결을 듣고있다. 새 사용자가 연결할 때마다 본체에서 “연결된 새 사용자”가 인쇄됩니다. 나는 당신이 빨리 시도 할 수있는 매우 단순화 된 기술을 제안할 것입니다. 그것은 최선의 방법이 아니다 : 그냥 시작하기위한 해결 방법으로 볼 수 있습니다. 당신은 세션 관리에 대한 정말 심각한 경우, 당신은 session.socket.io 같은 미들웨어의 조각을 사용해야합니다. 이것이 무엇을 의미하는지 알 수 있습니까? 내가 다른 방법을 말하자 : socket.io 예를 들어, 귀하의 웹 사이트에 채팅 서비스를 설정할 수 있습니다! 🙂 3.0부터 express 응용 프로그램은 http 또는 http Server 인스턴스에 전달하는 요청 처리기 함수가 되었습니다.

익스프레스 응용 프로그램 기능이 아니라 socket.io 위해 서버를 전달해야 합니다. 또한 앱이 아닌 서버에서 .listen을 호출해야 합니다. 먼저 프로젝트를 설명하는 package.json 매니페스트 파일을 만들어 보겠습니다. 나는 당신이 전용 빈 디렉토리에 배치하는 것이 좋습니다 (나는 내 채팅 예제를 호출합니다). 특정 응용 프로그램에 대해 내보낸 모든 메시지와 이벤트를 제어할 수 있는 경우 기본 /네임스페이스를 사용하여 작동합니다. 타사 코드를 활용하거나 다른 사용자와 공유할 코드를 생성하려는 경우 socket.io 소켓이름을 지정하는 방법을 제공합니다. 클라이언트 측 JS 파일의 로컬 버전을 사용하려는 경우 node_modules/socket.io-client/dist/socket.io.js에서 찾을 수 있습니다. socket.io 작업하는 유일한 방법은 .js 파일에 있습니다. 따라서 신체 끝에 이러한 줄을 추가합니다: 예를 들어 브라우저가 WebSocket을 지원하지 않지만 플래시가 설치된 경우 socket.io 플래시를 통해 실시간으로 통신을 수행합니다.

Scroll Up