라이브러리

[PHP] SwooleCoroutineHttpClient::close




SwooleCoroutineHttpClient::close


Swoole Coroutine HTTP Client는 PHP에서 비동기 HTTP 요청을 처리하기 위한 라이브러리입니다. Swoole Coroutine HTTP Client는 비동기적으로 HTTP 요청을 처리할 수 있는 스레드 기반의 HTTP 클라이언트입니다.

SwooleCoroutineHttpClient::close는 HTTP 클라이언트를 종료하는 메소드입니다. 이 메소드는 HTTP 클라이언트를 종료하고, 모든 연결을 끊는 것을 의미합니다.

예제


#hostingforum.kr
php

use SwooleCoroutineHttpClient;



// HTTP 클라이언트를 생성합니다.

$client = new Client('http://example.com');



// HTTP 요청을 보내고, 응답을 받습니다.

$client->get('/');

$response = $client->body;



// HTTP 클라이언트를 종료합니다.

$client->close();



// HTTP 클라이언트를 종료한 후, 다시 HTTP 요청을 보내는 것은 불가능합니다.

// 따라서, HTTP 클라이언트를 종료하기 전에 HTTP 요청을 보내야 합니다.



예제 2 (비동기 HTTP 요청)


#hostingforum.kr
php

use SwooleCoroutineHttpClient;



// HTTP 클라이언트를 생성합니다.

$client = new Client('http://example.com');



// 비동기 HTTP 요청을 보내고, 응답을 받습니다.

go(function() use ($client) {

    $client->get('/');

    $response = $client->body;

    echo $response;

});



// HTTP 클라이언트를 종료합니다.

$client->close();



예제 3 (HTTP 클라이언트를 여러 번 사용하는 경우)


#hostingforum.kr
php

use SwooleCoroutineHttpClient;



// HTTP 클라이언트를 생성합니다.

$client1 = new Client('http://example.com');

$client2 = new Client('http://example.org');



// HTTP 요청을 보내고, 응답을 받습니다.

go(function() use ($client1) {

    $client1->get('/');

    $response = $client1->body;

    echo $response;

});



go(function() use ($client2) {

    $client2->get('/');

    $response = $client2->body;

    echo $response;

});



// HTTP 클라이언트를 종료합니다.

$client1->close();

$client2->close();



참고


* Swoole Coroutine HTTP Client는 PHP 7.2 이상에서만 사용할 수 있습니다.
* Swoole Coroutine HTTP Client는 스레드 기반의 HTTP 클라이언트이므로, HTTP 요청을 보내는 동안 다른 스레드에서 HTTP 요청을 보내는 것은 불가능합니다.
* Swoole Coroutine HTTP Client는 비동기적으로 HTTP 요청을 처리할 수 있으므로, HTTP 요청을 보내는 동안 다른 스레드에서 HTTP 요청을 보내는 것은 가능합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 103 페이지

검색

게시물 검색