Zum Hauptinhalt springen
WS-App-Login ermöglicht die Anmeldung in einem WEBSALE Shop aus einer server-, PC- oder smartphonebasierten Anwendung heraus. Der Kern der Schnittstelle ist ein Token: Die App speichert nie das Shop-Passwort, sondern nur ein Token, mit dem sie bei Bedarf eine Session eröffnet. In dieser Beschreibung steht App für die Anwendung und Gerät für deren Trägersystem, also Server, Desktop-Rechner, Tablet oder Smartphone.

Warum kein Passwort in der App liegt

Der Benutzer gibt E-Mail-Adresse und Passwort einmal in der App ein, die Daten gehen an den Shop. Die App darf das Shop-Passwort nicht speichern. Damit der Benutzer sich trotzdem nicht bei jedem Shop-Besuch neu anmelden muss, fordert die App stattdessen ein Token an, ein JSON Web Token nach RFC 7519. Dieses Token darf sie dauerhaft speichern und damit später eine Session eröffnen. Die Verbindung zum Shopserver muss immer über SSL laufen. Unverschlüsselte Verbindungen lehnt der Shop ab. Die Kommunikation erfolgt per REST, die Inhalte werden als JSON übergeben.

Die vier Funktionen

Alle vier liegen unter https://Ihre-Shop-Domain/_api/shop/AppLogin/ und werden per POST aufgerufen. Im Fehlerfall antwortet der Shop durchgängig mit dem HTTP-Code 400 und diesem Rumpf:

GetToken

POST https://Ihre-Shop-Domain/_api/shop/AppLogin/GetToken Header Content-Type: application/json, Rumpf:
Antwort bei Erfolg, HTTP-Code 200:
Dieses Token speichert die App dauerhaft.

GetSID

POST https://Ihre-Shop-Domain/_api/shop/AppLogin/GetSID Header X-Authorization: Bearer TOKEN, Rumpf:
Antwort bei Erfolg, HTTP-Code 200:
Die Session-ID kann die App speichern, wenn sie mehrere Verlinkungen in den Shop ausführt.

Register

POST https://Ihre-Shop-Domain/_api/shop/AppLogin/Register Header Content-Type: application/json, Rumpf:
Bei Erfolg antwortet der Shop mit HTTP-Code 200 ohne Inhalt. Danach fordern Sie über GetToken ein Token an. Ein Benutzer lässt sich nur anlegen, wenn zu der E-Mail-Adresse noch kein Konto existiert. Zusätzlich prüft der Shop das Passwort gegen seine Güte-Richtlinien. Als Faustregel gilt:
  • mindestens 8 Zeichen
  • mindestens ein Buchstabe, eine Ziffer und ein Sonderzeichen
  • nicht identisch oder zu ähnlich zur E-Mail-Adresse
Die tatsächlich eingestellten Richtlinien erfragen Sie bei der WEBSALE AG. Planen Sie in der App ein, dass Register am Passwort scheitern kann, und geben Sie die Fehlermeldung an den Benutzer weiter.

Logout

POST https://Ihre-Shop-Domain/_api/shop/AppLogin/Logout Header Content-Type: application/json und X-Authorization: Bearer TOKEN, Rumpf:
Das Token ist hier zwingend erforderlich. Bei Erfolg antwortet der Shop mit HTTP-Code 200 ohne Inhalt.

Verlinkung in den Shop

Sobald eine Session-ID vorliegt, verlinken Sie aus der App in den Shop. Der Benutzer ist in dieser Session bereits angemeldet. Die Session-ID hängen Sie als Parameter sid an die Adresse: Beispiel für ein Produkt:

Fehlercodes

Codes, die als „intern” gekennzeichnet sind, zeigen Sie dem Benutzer nicht an. Sie dienen der Diagnose durch die WEBSALE AG.

Anmeldung

Registrierung

Verwandte Themen