REST: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Root (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 32: | Zeile 32: | ||
http://<RechnerName>:3047/SORTIMENT | http://<RechnerName>:3047/SORTIMENT | ||
</code> | </code> | ||
== Server in PHP Programmiert == | |||
Grundschwierigkeit scheint mir zu sein, dass immer nur in "Verzeichnissen" gedacht wird und nicht wie in PHP in "Parameter", toll wäre eigentlich wenn man dies in "methodhandler" umbiegen könnte. Es kommen z.B. 3 verschiedene Anfragen auf mich zu: | |||
./aqbanking/UMSATZ/~BLZ~/~Konto#~?f=text | |||
das bedeutet ich müsste in PHP irgenwie sagen können: | |||
class root (tRESTworker) { | |||
echo("REST works!<br>" ); | |||
} | |||
class umsatz (tRESTworker) { | |||
BLZ = frompath(+1); | |||
KONTO = frompath(+2); | |||
echo("Dein Kontostand is null"); | |||
} | |||
class lastschrift (tRESTworker) { | |||
BLZ = frompath(+1); | |||
KONTO = frompath(+2); | |||
echo("..."); | |||
} | |||
$root = newREST(nil,'aqbanking'); | |||
$umsatz = newREST($root,'UMSATZ'); | |||
$lastschrift = newREST($root,'LASTSCHRIFT'); | |||
http://blog.astrumfutura.com/archives/245-RESTful-Web-Services-with-Zend-Framework.html | |||
== Ausblick == | == Ausblick == |
Version vom 1. März 2008, 13:22 Uhr
Die REST-(RESTful)-Server- und Client-Technologie ist in den OrgaMon integriert.
- Server
Auf einem definierbaren TCP-Port (Standard=3047) stellt der OrgaMon also diesen Web-Service zur Verfügung. Er lässt sich durch einen normalen Web-Browser ansprechen, eigent sich aber insbesondere für die Automatisierung und zur Kopplung von anderen Geschäftsprozessen an den OrgaMon. Insbesondere die Anbindung des WebShops.
- Client
Die Buchführung des OrgaMon kann ein externes Konto leicht über einen REST-Service (AqBanking) ansprechen und Buchungen (Umsätze) auslesen. Über den Service lassen sich jedoch auch Lastschriften durchführen. In einer späteren Ausbaustufe können auch Überweisungen durchgeführt werden.
Grundlagen der REST Technologie
- http://www.oio.de/public/xml/rest-webservices.htm
- http://xml-magazin.de/itr/online_artikel/show.php3?id=209&nodeid=69
- http://linuxenterprise.de/itr/news/psecom,id,39097,nodeid,8.html
Beispiele
- Starten die den REST Service: WebShop->Reiter REST->Schalter REST
- Benutzen Sie einen Browser, und geben Sie den Rechnernamen des Systems an, auf dem sie eben REST gestartet haben.
- Beispiel für alle möglichen Datenbank-Tabellen:
http://<RechnerName>:3047/
- Beispiel für eine einzelne Tabelle
http://<RechnerName>:3047/SORTIMENT
Server in PHP Programmiert
Grundschwierigkeit scheint mir zu sein, dass immer nur in "Verzeichnissen" gedacht wird und nicht wie in PHP in "Parameter", toll wäre eigentlich wenn man dies in "methodhandler" umbiegen könnte. Es kommen z.B. 3 verschiedene Anfragen auf mich zu:
./aqbanking/UMSATZ/~BLZ~/~Konto#~?f=text
das bedeutet ich müsste in PHP irgenwie sagen können:
class root (tRESTworker) { echo("REST works!
" ); } class umsatz (tRESTworker) { BLZ = frompath(+1); KONTO = frompath(+2); echo("Dein Kontostand is null"); } class lastschrift (tRESTworker) { BLZ = frompath(+1); KONTO = frompath(+2); echo("..."); } $root = newREST(nil,'aqbanking'); $umsatz = newREST($root,'UMSATZ'); $lastschrift = newREST($root,'LASTSCHRIFT');
http://blog.astrumfutura.com/archives/245-RESTful-Web-Services-with-Zend-Framework.html
Ausblick
- Grundsätzliche Erweiterung um einen "Name-Space" genau wie bei XMLRPC, also als erster "Parameter" wird grundsätzlich der Name-Space übertragen.
/<NameSpace>/
- voraussichtliche Haupt-Einstiege (r/w):
./olap/
Ausführen von OLAP-Statements
./buch/
Besondere Auswertungen für die Buchführung
./shop/
Wrapper
./ecommerce/
kompletter Funktionsumfang des eCommerce-Moduls
f - Parameter
Ein allzeit Verwendbarer Parameter für das Format der Antwort des Servers ist der "f"-Parameter. Dabei gibt es folgdende Werte:
- f=xml: Die Antwort wird in XML formatiert
- f=text: Die Antwort wird als csv-Tabelle formatiert
- f=xls: Es wird direkt mit einem XLS Dokument geantwortet
- f=text.zip: Die Textantwort wird gezippt übertragen