Zend_Service_Rest
является базовым клиентом REST для
выполнения запросов к любым веб-сервисам, основанным на REST.
Пример 16.1. Основной запрос REST
В нижеследующем коде метод setUri()
устанавливает
базовый URI к веб-сервису. Затем вызывается
метод restGet()
для выполнения запроса GET, ему
передаются путь и строка запроса (необязательный параметр).
<?php require_once 'Zend/Service/Rest.php; try { $rest = new Zend_Service_Rest(); $rest->setURI('http://example.org'); // Возвращает объект Zend_HttpClient_Response $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>'; } ?>
![]() |
Замечание |
---|---|
Вы можете передавать правильно сформированную строку запроса (без знака
вопроса "? " в начале) методу restGet() ,
либо передавать ассоциативный массив из пар имя-значение.
Независимо от того, какой способ был выбран,
имена и значения должны быть закодированы для URL (например,
с помощью urlencode() ).
|
Методы restPost()
и restPut()
используются так же, как и метод restGet()
,
за тем отличием, что данные в них отправляются через HTTP-методы
POST и PUT соответственно.
Метод restDelete()
работает с путем в URL, но не имет
второго параметра, в котором передаются данные.