Zend_Service_Rest
é um cliente REST básico para efetuar consultas a qualquer web service baseado em REST.
Exemplo 13.1. Uma requisição REST básica
No código abaixo, o método setUri()
seta a URI base para o web service REST. Então, o método restGet()
é chamado para executar uma requisição GET para um dado path com uma query string opcional.
<?php require_once 'Zend/Service/Rest.php; try { $rest = new Zend_Service_Rest(); $rest->setURI('http://example.org'); // Returns a Zend_HttpClient_Response Object $response = $rest->restGet('/services/rest', 'foo=bar&baz=bat'); if ($response->isSuccessful()) { echo $response->getBody(); } else { echo '<p>An error occurred</p>'; } } catch (Zend_Exception $e) { echo '<p>An error occurred (' .$e->getMessage(). ')<p>'; } ?>
Nota | |
---|---|
Você pode passar uma query string devidamente formatada (sem o ponto de interrogação "? ") para restGet() , ou voçê pode passar um array associativo pares nome-valor. Independentemente do método escolhido, os nomes e valores devem ser URL-encoded (ex: usando urlencode() ).
|
Usar restPost()
e restPut()
é o mesmo que usar restGet()
, mas os dados são enviados via HTTP POST ou PUT, respectivamente, em lugar de GET.
O método restDelete()
opera em um path, mas não requer um segundo parâmetro pelo qual os dados podem ser passados.