목록으로
매뉴얼 2025-12-02 08:31:07

[웹] 기본 서버 전송 소스 설명

profile_image

관리자

Views 1,782 | Comments 0

아래 코드는 실시간 알림 게시판에 적용되는 예제 소스입니다.
WebSocket 연결 상태를 자동으로 확인하여, 알림 데이터를 서버에 안전하게 전송하는 역할을 합니다.

이 코드를 정상적으로 동작시키기 위해서는 반드시 페이지 상단에 WebSocket 엔진 소스(WS 초기화, sendEvent, connectWebSocket 등)가 포함되어 있어야 합니다.
엔진 로직 없이 이 함수만 사용하면 전송이 이루어지지 않습니다.


1) 보낼 데이터(JSON) 준비

먼저 서버로 전달할 알림 패킷을 구성합니다.

const jsonData = {
    type: "notification",    // 데이터 타입 정의
    auth: "admin",           // 인증/권한(옵션)
    mb_id: MB_ID,            // 회원 아이디
    write_id: "글쓴이 아이디",
    ip: USER_IP,             // 클라이언트 IP
    noti_type: "글쓴위치",
    mb_name: "글쓴이 이름 또는 닉네임",
    bo_table: "게시판 테이블명",
    bo_subject: "게시판 제목",
    wr_subject: "게시글 제목",
    wr_id: "게시글 고유 ID",
    skin_url: "게시글 주소"
};


위의 데이터는 실시간 알림 게시판을 만들었을 때 작업했던 값들입니다.


2) WebSocket이 열렸는지 확인


아래 조건문이 핵심입니다.

if (ws && ws.readyState === WebSocket.OPEN) {
    sendEvent(jsonData);  // 즉시 전송
}


연결 존재(ws), 열림 상태(OPEN) 두 조건이 모두 충족돼야 바로 전송합니다.


3) 아직 열리지 않았다면 → 자동 대기 후 전송


웹소켓이 아직 연결중이라면 OPEN 이벤트를 기다립니다.

else {
    ws.addEventListener("open", () => sendEvent(jsonData), { once: true });
}


{ once: true } 옵션 덕분에 딱 한 번만 실행되고 사라집니다. 깔끔하고 안전한 전송 구조죠.

즉, WebSocket이 “자, 연결 완료!”라고 외치는 순간 → sendEvent(jsonData)가 전달됩니다.


4) 사용 방법

sendChatMessageSafe("notification 메시지");


여기서 "notification 메시지"는 사실 jsonData 안에 직접 쓰지 않으셨으므로
단순 호출 트리거 역할만 합니다.
실제 메시지는 jsonData 객체 안에서 완성되어 서버로 갑니다.

댓글목록

등록된 댓글이 없습니다.

Total 19| 1 페이지
Subject
[공지] 메시지 브릿지는 무료 서비스입니다.
관리자 2025-12-25 HITS 2878
[공지] 메시지 브릿지(Message Bridge) 설명
관리자 2025-12-25 HITS 3178
메시지 브릿지 1.4.1 보안 패치
관리자 2025-12-25 HITS 1746
메시지 브릿지 1.4.0 기능 패치
관리자 2025-12-25 HITS 1855
메시지 브릿지 1.3.2 버그 패치
관리자 2025-12-25 HITS 1949
[웹] 기본 서버에서 받은 소스 설명
관리자 2025-12-25 HITS 1777
[열람중] [웹] 기본 서버 전송 소스 설명
관리자 2025-12-25 HITS 1783
[웹] 기본 엔진 소스 설명
관리자 2025-12-25 HITS 1727
메시지 브릿지 1.3.1 보안,성능 패치
관리자 2025-12-25 HITS 1985
메시지 브릿지 1.3.0 기능 패치
관리자 2025-12-25 HITS 1889
메시지 브릿지 1.2.1 보안 패치
관리자 2025-12-25 HITS 2106
메시지 브릿지 1.2.0 기능패치
관리자 2025-12-25 HITS 2281
메시지 브릿지 1.1.3 성능패치
관리자 2025-12-25 HITS 2460
메시지 브릿지 1.1.2 보안패치
관리자 2025-12-25 HITS 2445
메시지 브릿지 무료 사용 약관
관리자 2025-12-25 HITS 2675
DX
DESIGNONEX

단 하나의 차별화된 경험을 만든다
기술과 예술이 결합된 최상의 디지털 솔루션을 경험해 보세요.

Information

상호명: 디자인원엑스 (DESIGNONEX)

대표자: 김일형

사업자번호: 123-36-98558

통신판매번호 : 2025-안양만안-574

에스크로 서비스 등록번호

제 A07-20260105-0033 호

Contact

이메일: designonex@naver.com

연락처: 010-6210-0381

© 2025 DESIGNONEX. ALL RIGHTS RESERVED.