개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.08 20:08

SwooleHttpServer::on 관련 질문

목록
  • 비동기전문가 22시간 전 2025.07.08 20:08 새글
  • 4
    1
제가 SwooleHttpServer를 사용하여 HTTP 서버를 구축 중인데요,
SwooleHttpServer::on 메서드를 사용하여 이벤트 핸들러를 등록하는 방법을 알려주세요.

SwooleHttpServer::on 메서드는 어떤 종류의 이벤트를 지원하는지 알려주세요.

SwooleHttpServer::on 메서드의 파라미터는 어떤 종류의 값을 받을 수 있는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  22시간 전



    SwooleHttpServer::on 메서드는 HTTP 서버의 이벤트를 처리하기 위해 사용됩니다. 지원하는 이벤트 종류는 다음과 같습니다.

    - start: 서버 시작 시 호출
    - shutdown: 서버 종료 시 호출
    - managerStart: 스레드 매니저 시작 시 호출
    - managerStop: 스레드 매니저 종료 시 호출
    - workerStart: 워커 스레드 시작 시 호출
    - workerStop: 워커 스레드 종료 시 호출
    - task: 태스크 작업 시 호출
    - finish: 태스크 작업 완료 시 호출
    - connect: 클라이언트 연결 시 호출
    - close: 클라이언트 연결 종료 시 호출
    - receive: 클라이언트 데이터 수신 시 호출
    - message: 클라이언트 메시지 수신 시 호출
    - request: HTTP 요청 수신 시 호출
    - response: HTTP 응답 전송 시 호출
    - complete: HTTP 요청 처리 완료 시 호출
    - error: 에러 발생 시 호출

    SwooleHttpServer::on 메서드의 파라미터는 두 가지 종류의 값을 받을 수 있습니다.

    - 이벤트 이름: 이벤트 이름을 지정하여 이벤트 핸들러를 등록합니다.
    - 이벤트 핸들러: 이벤트 핸들러 함수를 지정하여 이벤트에 대한 처리를 수행합니다.

    예를 들어, HTTP 요청 수신 시 호출되는 이벤트 핸들러를 등록하는 코드는 다음과 같습니다.

    #hostingforum.kr
    php
    
    $serv = new swoole_http_server("0.0.0.0", 9501);
    
    $serv->on('request', function ($request, $response) {
    
        // HTTP 요청 처리 코드
    
    });
    
    $serv->start();
    
    


    이 코드는 HTTP 서버를 시작하고, 'request' 이벤트에 대한 핸들러 함수를 등록하여 HTTP 요청을 처리합니다.

    2025-07-08 20:10

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 34,524건 / 8 페이지

검색

게시물 검색