• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Node.js, Express 게시판 socket 퇴장하기 질문있습니다

socket 퇴장하기 질문있습니다

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #55043

    이창민
    참가자
    안녕하세요 선생님 
    채팅방1 퇴장 버튼을 누르면 소켓 종료후 남은 유저들에게 버튼누른사람이 퇴장했다고
    메세지를 보내고 연결을 종료하고싶은데 
    하기와같이 코딩시 퇴장했다는 메세지는 나오지만, 해당 채팅방에서 채팅이 계속 가능합니다 ㅠㅠ
    
    
    
    
    
    ---server.js
    io.on('connection', function(socket){
    console.log('유저 접속됨')
    socket.on('room1-send', function(data){
    io.to('room1').emit('broadcast', data)
     })
    socket.on('room1', function(사용자){
    io.to('room1').emit('broadcast', 사용자)
     })
    socket.on('joinroom', function(data){
    socket.join('room1')
     })
    socket.on('user-send', function(data){
    io.to(socket.id).emit('broadcast', data)
     })
    socket.on('disconnect', function(data){
    io.to('room1').emit('broadcast', data)
     })
     })
    
    
    ------ejs
    
    <button id="room1" class="btn btn-danger">채팅방1 입장</button>
    <button id="room1-out" class="btn btn-danger">채팅방1 퇴장</button>
    <button id="room1-send" class="btn btn-danger">채팅방1에서 메세지 보내기</button>
    
    
    <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.5.3/socket.io.js" integrity="sha512-iWPnCISAd/J+ZacwV2mbNLCaPGRrRo5OS81lKTVPtRg1wGTC20Cfmp5Us5RcbLv42QLdbAWl0MI57yox5VecQg==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.1/dist/js/bootstrap.bundle.min.js" integrity="sha384-u1OknCvxWvY5kfmNBILK2hRnQC3Pr17a+RTT6rIHI7NnikvbZlHgTPOOmMi466C8" crossorigin="anonymous"></script>
    <script>
    var socket = io();
    $('#room1-send').click(function(){
    socket.emit('room1-send', '<%= 사용자.이름 %> <%= 사용자.유형 %> : ' + $('#input1').val());
    document.getElementById('input1').value = null;
     })
    $('#room1').click(function(사용자){
    socket.emit('joinroom', '입장시켜줘')
    socket.emit('room1', '<p> <%= 사용자.이름 %> <%= 사용자.유형 %>님이 입장하셨습니다. </p>')
     })
    $('#room1-out').click(function(사용자){
    socket.on('disconnect', '퇴장시켜줘')
    socket.emit('room1', '<p> <%= 사용자.이름 %> <%= 사용자.유형 %>님이 퇴장하셨습니다. </p>')
     })
    socket.on('broadcast', function(data){
    $('#content').append('<div>' + data + '</div>')
     })
    </script>
    #55066

    codingapple
    키 마스터
    아마 room에서 유저를 disconnect하는 코드가 어딘가 있을텐데 그거 찾아서 사용해봅시다
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관, 개인정보처리방침
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠