Zend_Service_Rest
is een basis REST client om zoekopdrachten te maken voor eender
welke REST-gebaseerde web service.
Voorbeeld 13.1. Een basis REST verzoek
In de volgende code zet de setUri()
methode de base URI voor de
REST web service. Dan wordt de restGet()
methode opgeroepen om een GET verzoek te maken op
een gegeven pad met een optionele query string.
<?php require_once 'Zend/Service/Rest.php'; try { $rest = new Zend_Service_Rest(); $rest->setURI('http://example.org'); // Geeft een Zend_Http_Response Object terug $response = $rest->restGet('/services/rest', 'foo=bar&baz=bat'); if ($response->isSuccessful()) { echo $response->getBody(); } else { echo '<p>Er trad een fout op</p>'; } } catch (Zend_Exception $e) { echo '<p>Er trad een fout op (' .$e->getMessage(). ')<p>'; } ?>
Opmerking | |
---|---|
Je kan een correct geformateerde query string (zonder de voorafgaande vraagtekens "? ") aan
restGet() doorgeven, of je kan een associatieve array van naam/waarde-paren doorgeven.
In ieder geval moeten de namen en waarden URL-encoded zijn (bv. met
urlencode() ).
|
Het gebruik van restPost()
en restPut()
is hetzelfde als het gebruik van de
restGet()
, maar de data wordt respectievelijk via HTTP POST of PUT gezonden in plaats van via GET.
De restDelete()
methode werkt met een pad maar heeft geen tweede parameter in welke data
kan worden doorgegeven.