OBS/Kostenpflichtige Module/RESTServer/Scripting

Aus OBS Wiki
Version vom 26. Juli 2023, 06:34 Uhr von Rademacker (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „{{Kostenpflichtige Module}} =Anleitung für Endpunkt-Scripte= Anfragen an einen Endpunkt werden (nach erfolgreicher Authentifizierung und Authorisierung) an das hinterlegte Script weitergegeben und müssen dort beantwortet werden. Gibt es einen Fehler oder wird die Anfrage nicht korrekt bearbeitet wird ein Fehlercode (HTML-Fehlercode) zurückgegeben. =Sicherheit= Da hier ein Zugriff von außen ermöglicht wird ist es sehr wichtig, dass Übergabeparame…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen
Kostenpflichtige Module

ZUGFeRD
UPS
IMS Professional
SMS
Mehrlager-Verwaltung
Mehrsprachen Modul
Multilanguage Modul
EVA Marketing Tool
Termin-Projekte
Edifact-Schnittstelle
Backup Überwachung Email
OBS Geo Daten
DeliSprint / DPD
Filialen
Cashback
Moebelschnittstelle
Dokumenten Manager
DocuWare-Schnittstelle
OFML-Kalkulation
Versicherungsschaden
Gutschriftsanzeigen
Kameraverwaltung
DataInOut


Anleitung für Endpunkt-Scripte

Anfragen an einen Endpunkt werden (nach erfolgreicher Authentifizierung und Authorisierung) an das hinterlegte Script weitergegeben und müssen dort beantwortet werden. Gibt es einen Fehler oder wird die Anfrage nicht korrekt bearbeitet wird ein Fehlercode (HTML-Fehlercode) zurückgegeben.

Sicherheit

Da hier ein Zugriff von außen ermöglicht wird ist es sehr wichtig, dass Übergabeparameter niemals zur direkten Datenmanipulation genutzt werden. Bei der Entwicklung von Endpunkt-Scripten muss stehts dieser Aspekt bedacht werden!

Methoden

Die folgenden Einsprungs-Methoden sind vorgegeben und müssen nach Bedarf implementiert werden:

function Get(oParams: TStrings): string;
begin
    [...]
end;
function Post(oParams: TStrings): string;
begin
    [...]
end;
function Delete(oParams: TStrings): string;
begin
    [...]
end;

Parameter

Alle übergebenen Parameter werden in der Liste "oParams" übergbeben und sind immer im Format "string".

Beispiel für den Zugriff:

if (not empty(oParams.Values['parameter_name'])) then begin
    cWert := oParams.Values['parameter_name'];
end;

Rückgabe

Die Rückgabe erfolgt ausschließlich im JSON-Format.

Hier ein simples Beispiel für eine Antwort:

{
    "Wert_string": "123",
    "Wert_int": 456
}

Hier der dafür nötige Code:

function Get(oParams: TStrings): string;
var oRes: TJSONObject;
begin
    oRes := TJSONObject.Create();
    oRes.AddPair('Wert_string', '123');
    oRes.AddPair('Wert_int', 456);

    result := oRes.ToJSON();
end;

Wird durch das Script keine Antwort erzeugt, wird automatisch eine leere JSON-Antwort zurückgegben:

{}