Programmer's Reference Guide
| Zend_Rest_Client |
Zend_Rest_Server
Einführung
Zend_Rest_Server ist ein komplett-feature REST Server.
Verwenden des REST Servers
Beispiel #1 Grundsätzliche Verwendung vom Zend_Rest_Server - Klassen
$server = new Zend_Rest_Server();
$server->setClass('My_Service_Class');
$server->handle();
Beispiel #2 Grundsätzliche Verwendung vom Zend_Rest_Server - Funktionen
/**
* Sag Hallo
*
* @param string $who
* @param string $when
* @return string
*/
function sayHello($who, $when)
{
return "Hallo $who, Gut $when";
}
$server = new Zend_Rest_Server();
$server->addFunction('sayHello');
$server->handle();
Aufruf eines Zend_Rest_Server Services
Um ein Zend_Rest_Server Service aufzurufen muß ein GET/POST
method Argument mit einem Wert angegeben werden der der Methode entspricht
die aufgerufen werden soll. Es können anschließend beliebig viele Argumente folgen die
entweder den Namen des Arguments verwenden (z.B. "wer") oder man kann arg
verwenden gefolgt von der nummerischen Position des Arguments (z.B. "arg1").
Hinweis: Nummerischer Index
Nummerische Argumente verwenden einen 1-basierenden Index.
Um sayHello vom obigen Beispiel aufzurufen kann entweder:
?method=sayHello&who=Davey&when=Day
verwendet werden oder:
?method=sayHello&arg1=Davey&arg2=Day
Senden eines eigenen Status
Wenn Werte zurückgegeben werden, kann man, um einen eigenen Status zurückzugeben, ein
Array mit einem status Schlüssel zurückgeben.
Beispiel #3 Einen eigenen Status zurückgeben
/**
* Sag Hallo
*
* @param string $who
* @param string $when
* @return array
*/
function sayHello($who, $when)
{
return array('msg' => "Ein Fehler ist aufgetreten", 'status' => false);
}
$server = new Zend_Rest_Server();
$server->addFunction('sayHello');
$server->handle();
Eigene XML Antworten zurückgeben
Wenn man eigenes XML zurückgeben will, kann einfach ein DOMDocument,
DOMElement oder SimpleXMLElement Objekt zurückgegeben werden.
Beispiel #4 Eigenes XML zurückgeben
/**
* Sag Hallo
*
* @param string $who
* @param string $when
* @return SimpleXMLElement
*/
function sayHello($who, $when)
{
$xml ='<?xml version="1.0" encoding="ISO-8859-1"?>
<mysite>
<value>Hallo $who! Hoffentlich hast Du einen guten $when</value>
<code>200</code>
</mysite>';
$xml = simplexml_load_string($xml);
return $xml;
}
$server = new Zend_Rest_Server();
$server->addFunction('sayHello');
$server->handle();
Die Antwort des Services wird ohne Modifizierungen zum Client zurückgegeben.
| Zend_Rest_Client |
