2012-12-28 2 views
2

분산 된 API에 액세스하는 PHP 클래스의 간단한 예제를 찾으려고합니다.API 클라이언트 클래스의 실제 예제

PHP API 클라이언트를 검색 할 때마다 API 자체를 구축하는 데 너무 많은 정보를 제공하고 컬 예를 넘어서는 실제 액세스 방법은 거의 제공하지 않습니다. 좋은 곱슬 방법과 요청을 처리하는 방법을 포함하는 PHP 클래스는 좋을 것입니다. 나는 예제와 많은 재 배열을 통해 배웁니다. 모범 사례의

private $hosts = array(URI_1, URI_2, URI_3); 
private $users = array(USER_1, USER_2, USER_3); 
private $pass = array(PASS_1, PASS_2, PASS_3); 

    public function __construct($request = array()) 
    { 
     if (is_array($request)) { 
     if(isset($request['hostname'])) { 
      if(in_array($request['hostname'], $hosts)) { 
       $this->input['hostname'] = $request['hostname']; 
      } 
     } 
     if (isset($request['username'])) { 
      if(in_array($request['username'], $users)) { 
       $this->input['username'] = $request['username']; 
      } 
     } 
     if (isset($request['password'])) { 
      if (in_array($request['password'], $pass)) { 
       $this->input['password'] = $request['password']; 
      } 
     } 
     if (isset($this->input['hostname']) && 
       isset($this->input['username']) && 
       isset($this->input['password'])) { 
      return true; 
     } 
    } else { 
     return false; 
    } 
} 

몇 가지 간단한 예제이 훨씬 쉽게 만들 것 :

나는 보통 연결 설정을 잡을 수있는 구조로 시작했다.

+0

많은 코드를 쓰지 않으려면 SOAP 또는 XMLRPC를 사용하십시오. wsdl 파일은 모든 메소드를 제공합니다. REST에서는 할 수 없습니다. –

답변

6

Guzzle을보십시오 :

목구멍 HTTP 요청 및 웹 서비스 클라이언트를 만드는 중 중복 를 전송하는 수고를 덜어줍니다. 큰를 보내는 횡단 페이지 매김 자원 배치에 대한 입력과 API의 출력, 자원 반복자를 정의하기위한 서비스 설명 :

목구멍은을 포함하여 강력한 웹 서비스 클라이언트를 만드는 데 필요한 도구를 포함하는 프레임 워크입니다 가능한 한 효율적으로 개의 요청 수

+0

아주 좋은 http 래퍼입니다. 그러나 여전히 래퍼. API 메소드를 클래스 메소드로 자동 전환하지 않습니다. –

+0

API 메소드를 클래스 메소드로 변환 할 필요가 없습니다. 그 모두는 유휴 흐름입니다. 코드를 간단하게 작성하십시오! –

+0

REST API에 대한 예를 보여줄 수 있습니까? –