>  기사  >  백엔드 개발  >  PHP용 Kong Admin API: 원활한 Kong 게이트웨이 관리를 위한 프레임워크에 구애받지 않는 클라이언트

PHP용 Kong Admin API: 원활한 Kong 게이트웨이 관리를 위한 프레임워크에 구애받지 않는 클라이언트

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-06 08:52:02245검색

Kong Admin API for PHP: A Framework-Agnostic Client for Seamless Kong Gateway Management

Kong Gateway의 Admin API와의 상호 작용을 단순화하는 강력하고 프레임워크 독립적인 PHP 패키지인 Kong Admin API for PHP를 소개하게 되어 기쁘게 생각합니다. 이 패키지는 이전 Laravel 전용 클라이언트(nasrulhazim/kong-gateway-php-client)보다 한 단계 더 발전된 패키지로, 이제 보관될 예정입니다.

우리의 새로운 패키지는 모든 PHP 환경에서 개발자를 위한 다목적 솔루션을 제공하여 프레임워크에 관계없이 Kong Gateway를 쉽게 관리할 수 있는 유연성을 제공합니다.

왜 PHP용 Kong Admin API를 사용해야 할까요?

Kong Gateway는 유연성, 확장성 및 기능을 갖추고 있어 API 관리에 이상적입니다. 그러나 기존 PHP 클라이언트는 특정 프레임워크에 묶여 있거나 강력한 유연성이 부족했습니다. 이 새로운 패키지는 다음을 제공하여 이러한 요구 사항을 해결합니다.

  • 프레임워크에 구애받지 않는 디자인: 모든 PHP 프레임워크 또는 사용자 정의 프로젝트와 호환됩니다.
  • 포괄적인 API 지원: 간소화된 CRUD 작업으로 Kong 리소스를 손쉽게 관리하세요.
  • 구성 가능한 인증: API 키 기반 인증이 내장되어 있어 안전한 접근 관리가 가능합니다.
  • 모듈식 설정: API의 기본 URL, 헤더 등을 환경에 맞게 맞춤설정하세요.
  • 신뢰할 수 있는 오류 처리: 강력한 오류 처리로 다운타임을 방지하고 안정적인 API 상호 작용을 보장합니다.

빠른 시작 가이드

다음은 Kong Admin API for PHP를 시작하는 데 도움이 되는 가이드입니다.

설치

패키지를 설치하려면 다음을 실행하세요.

composer require cleaniquecoders/kong-admin-api

Docker에서 Kong 설정하기

Kong을 처음 사용하거나 로컬 개발 환경에서 빠르게 설정하고 싶다면 Docker를 사용하여 Kong Gateway 설정 가이드를 확인하세요. 이 가이드는 테스트 및 개발에 이상적인 Kong을 로컬에서 실행하기 위한 단계별 Docker 설정을 제공합니다.

Kong Gateway API 루프백 구성

먼저 Admin API에서 루프백 연결을 허용하도록 Kong을 구성하여 안전한 헤더 기반 인증을 활성화합니다. 다음은 컬을 사용하여 설정하는 방법의 예입니다.

#!/bin/bash

# Create Admin API Service
curl --request POST --url http://localhost:8001/services --data name=admin-api-service --data url='http://localhost:8001'

# Create Admin API Route
curl --request POST --url http://localhost:8001/services/admin-api-service/routes --data 'paths[]=/admin-api' --data name=admin-api-route

# Enable Key Auth on Admin API Service
curl --request POST --url http://localhost:8001/services/admin-api-service/plugins --header 'Content-Type: application/json' --data '{"name":"key-auth","config":{"key_names":["api-key"],"key_in_query":false}}'

# Create Admin API Consumer
curl --request POST --url http://localhost:8001/consumers --data '{"username":"apim","custom_id":"apim"}'

# Create APIM API Key
curl -X POST http://localhost:8001/consumers/apim/key-auth

PHP용 Kong Admin API 사용

다음은 이 패키지로 수행할 수 있는 일반적인 작업의 몇 가지 예입니다.

  1. 구성 초기화

    use CleaniqueCoders\KongAdminApi\Configuration;
    
    $configuration = new Configuration(
        base: 'http://127.0.0.1:8000',
        uri: 'admin-api',
        apiKey: 'your-api-key',
        keyName: 'api-key'
    );
    
  2. 커넥터 및 클라이언트 생성

    use CleaniqueCoders\KongAdminApi\Client;
    use CleaniqueCoders\KongAdminApi\Connector;
    
    $connector = new Connector($configuration);
    $client = new Client($connector);
    
  3. 작동예

  • 새로운 서비스 스토어

     use CleaniqueCoders\KongAdminApi\Enums\Endpoint;
     use CleaniqueCoders\KongAdminApi\Request;
    
     $response = $client->send(
         (new Request)
             ->setEndPoint(Endpoint::SERVICES)
             ->store(['name' => 'Some Service', 'url' => 'http://api.service.com'])
     );
    
     print_r($response);
    
  • 서비스 업데이트

     $response = $client->send(
         (new Request)
             ->setEndPoint(Endpoint::SERVICES)
             ->update('b3c12a56-1234-4f90-876d-12a5b678abcd', ['url' => 'http://new-example.com'])
     );
    
     print_r($response);
    
  • 서비스 받기

    composer require cleaniquecoders/kong-admin-api
    
  • 서비스 삭제

    #!/bin/bash
    
    # Create Admin API Service
    curl --request POST --url http://localhost:8001/services --data name=admin-api-service --data url='http://localhost:8001'
    
    # Create Admin API Route
    curl --request POST --url http://localhost:8001/services/admin-api-service/routes --data 'paths[]=/admin-api' --data name=admin-api-route
    
    # Enable Key Auth on Admin API Service
    curl --request POST --url http://localhost:8001/services/admin-api-service/plugins --header 'Content-Type: application/json' --data '{"name":"key-auth","config":{"key_names":["api-key"],"key_in_query":false}}'
    
    # Create Admin API Consumer
    curl --request POST --url http://localhost:8001/consumers --data '{"username":"apim","custom_id":"apim"}'
    
    # Create APIM API Key
    curl -X POST http://localhost:8001/consumers/apim/key-auth
    
  1. 플러그인 추가 사용자 정의 구성을 사용하여 속도 제한과 같은 플러그인을 추가할 수 있습니다.
use CleaniqueCoders\KongAdminApi\Configuration;

$configuration = new Configuration(
    base: 'http://127.0.0.1:8000',
    uri: 'admin-api',
    apiKey: 'your-api-key',
    keyName: 'api-key'
);

Kong API Gateway에 대한 도움이 필요하십니까?

Kong을 API 게이트웨이로 구현하려고 생각 중이거나 설정을 최적화하는 데 도움이 필요하십니까? 원활한 API 관리를 위해 Kong Gateway 설정 및 구성에 대한 상담을 제공합니다. 여기에서 약속을 예약할 수 있습니다. 상담을 예약하세요.

결론

Kong Admin API for PHP는 Kong Gateway의 API 리소스를 관리하기 위한 유연하고 안정적인 솔루션을 제공합니다. 여러 프레임워크와 강력한 구성 옵션을 지원하므로 쉽게 통합하고 개발자가 Kong의 강력한 기능을 완벽하게 제어할 수 있도록 설계되었습니다.


Unsplash에 Codioful(이전 Gradienta)이 찍은 사진

위 내용은 PHP용 Kong Admin API: 원활한 Kong 게이트웨이 관리를 위한 프레임워크에 구애받지 않는 클라이언트의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.