2. AGENDA
•PRINZIPIEN DER REST-API
•ERSTE SCHRITTE
•API-BEISPIELE
•VERWENDUNG DER LOKALEN API
•BEISPIELE LOKALE API
•REST-API ERWEITERN / TAX
•AUSBLICK AUF SHOPWARE 4.2
4. PRINZIPIEN DER REST-API
GRUNDEIGENSCHAFTEN
Adressierbarkeit
Aufteilung nach Ressourcen
Standardisierter Zugriff über eindeutige Adressen
/articles/3, /orders …
HTTP-Operationen / Request-Methoden
GET, POST, PUT und DELETE
Sicherheit
Autorisierung über HTTP-Auth
Standardisierung
Einheitlicher Zugriff auf Ressourcen
JSON aus Austauschformat
5. PRINZIPIEN DER REST-API
WEITERE EIGENSCHAFTEN
Erweiterbarkeit
Implementierung eigener Ressourcen
Automatische Erweiterung durch Model-Attribute
Lokale Verwendung der API
Direkter Zugriff auf die API Ressourcen
6. PRINZIPIEN DER REST-API
ÜBERSICHT DER
RESSOURCEN
Ressource Adressierung Kurzbeschreibung
Article /articles Artikel
Customer /customers Kunden
Category /categories Kategorien
Order /orders Bestellungen
CustomerGroup /customerGroups Kundengruppen
Media /media Medienverwaltung
PropertyGroup /propertyGroups Eigenschaften
Shop /shops Shops / Subshops
Translation /translations Übersetzungen
9. ERSTE SCHRITTE
ERSTER TEST
HTTP-Call | localhost/api/articles
Benutzername und API-Schlüssel dienen als
Autorisierungsgrundlage
Default Request-Methode GET
10. ERSTE SCHRITTE
cURL SCRIPT
Welche Parameter werden benötigt?
Grundkonfiguration des cURL Request
Request-Methode definieren
Ausgabe: HTTP-Code / Response
19. VERWENDUNG DER LOKALEN API
VORBEREITUNG: PLUGIN ERSTELLEN
Erstellt den neuen Controller TestApi
Dateistruktur:
Bootstrap.php: Frontend-Controller: TestApi.php:
20. VERWENDUNG DER LOKALEN API
INSTANZIIERUNG EINER API-RESSOURCE
Objekt der Ressource erstellen
Doctrine Models als Manager hinterlegen
21. VERWENDUNG DER LOKALEN API
VERFÜGBARE METHODEN DER RESSOURCEN
Methode Funktion
getOne Gibt einen Datensatz zurück (alle relevanten Daten)
getList Gibt einen Rowset an Daten zurück (nur die wichtigsten Daten)
create Erstellt einen neuen Datensatz
update Aktualisiert einen Datensatz
delete Löscht einen Datensatz
getOneByNumber Gibt einen Datensatz zurück (alle relevanten Daten)
updateByNumber Aktualisiert einen Datensatz
deleteByNumber Löscht einen Datensatz
37. AUSBLICK AUF SHOPWARE 4.2
Allgemein
Performance
Events / Hookable
Cache-Ressource
Artikel-Ressource
Unterstützung von Staffelpreisen
Bilder-Handling
Optimierung der Artikel-Bild-Zuordnung
Variantenunterstützung
Unterstützung von Kategorien in der
Medienverwaltung
Plugins
Unterstützung von Premium Plugins
Bundle
Liveshopping
etc.