Translations of this page:

service.php ist die auf HTTP-Requests wartende Datei. Sie interpretiert die angegeben Parameter, lädt eine entsprechende PHP-Klasse und führt die gewünschte Methode aus. Danach gibt sie das Resultat der Methode als HTTP-Response zurück. Die Antwort kann entweder PHP-serialisiert formatiert werden oder in JSON-Notation für in JavaScript programmierte Aufrufer.

Benötigte Dateien

  • core/stdfuncs.inc.php In dieser Datei werden viele allgemein gebräuchliche Funktionen definiert, service.php benutzt auch einge davon
  • core/api_provider.inc.php Diese Klasse instanziert und verwaltet die verfügbaren Webservices.
  • services.inc.php In dieser Datei werden die Verfügbaren Services definiert. Jeder Service benötigt einen eindeutigen Namen, eine Datei, eine Klasse und Parameter die der Klasse bei der Instanzierung übergeben werden.

Alle Pfadangaben sind relativ zu service.php oder relativ zu einem php_include_path

Siehe auch Beispielinhalt von services.php

POST/GET - Parameter

Die Datei service.php interpretiert sowohl GET als auch POST Parameter. fpogende Parameter werden interpretiert:

  • service welcher (ins services.inc.php definierte) Service soll aufgerufen werden.
  • method welche Methode soll aufgerufen werden.
  • parameter Parameter die der Methode übergeben werden sollen, PHP-serialisiert oder als Array
  • returnFormat, optional wie de HTTP-Response formatiert werden soll, js oder php, Default js
    • js ⇒ JSON Notation
    • php ⇒ PHP-serialisiert

Bespiele (die beiden sind identisch, aber die serialisierte Variante ist typsicher)

.../service.php?service=timer_zeit&method=getTime&parameter[0]=H:i:s
.../service.php?service=timer_zeit&method=getTime&parameter=a:1:{i:0;s:5:"H:i:s"}

Aufrufe des API-Providers

Einen Aufruf des API-Providers kann man machen indem man den Parameter service leer lässt, bzw. gar nicht übergibt. Der api_Provider hat 2 Methoden: getCharset() und getMethods(serviceName).

  • getCharset() gibt das von service.php erwartete Charset an. Dies kann in der services.inc.php-Datei mit der Variablen $CHAR_SET definiert werden
  • getMethods(serviceName) gibt ein Array aller öffentlichen Methoden eines Services zurück.
.../service.php?method=getCharset
 
dev/service.php.txt · Zuletzt geändert: 26.09.2007 17:58 von kaegi
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki