Überlegungen zu REST-basierten Konnektoren im Jitterbit Integration Studio
Einführung
Mehrere Konnektoren im Integration Studio können verwendet werden, um sich mit RESTful-Webdiensten, auch bekannt als REST-APIs, zu verbinden. Diese Seite bietet Überlegungen zur Auswahl des zu verwendenden Konnektors, wobei zwischen zwei generischen HTTP-Konnektoren oder zahlreichen anwendungsspezifischen Konnektoren gewählt werden kann. Es können auch benutzerdefinierte REST-basierte Konnektoren erstellt werden.
Übergeordnete Überlegungen und zukünftige Abwertung
Anwendungskonnektoren enthalten oft endpoint-spezifische Funktionen, die einfacher zu konfigurieren sind, wenn der spezifische Konnektor anstelle der generischen Konnektoren verwendet wird. Die generischen Konnektoren bieten jedoch im Allgemeinen mehr Flexibilität bei der Konfiguration. Benutzerdefinierte Konnektoren bieten zusätzliche Optionen, die im Voraus erstellt werden müssen, aber es den Benutzern erleichtern, Ihren markenspezifischen Konnektor mit Konfigurationen zu verwenden, die sonst möglicherweise nicht verfügbar wären.
Generische Konnektoren
Jitterbit bietet zwei generische Konnektoren für die Verbindung mit REST-APIs:
- HTTP: Der HTTP-Konnektor ist Jitterbits ursprünglicher HTTP-Konnektor, dessen zugrunde liegender Code seit mehr als einem Jahrzehnt verwendet wird. Dieser Konnektor ist bewährt und vertrauenswürdig, aber schwierig zu erweitern und zu warten. Daher wird die zukünftige Entwicklung nicht auf diesen Konnektor fokussiert sein.
- HTTP v2: Der HTTP v2-Konnektor ist Jitterbits nächste Version des HTTP-Konnektors. Er wurde mit Jitterbits erweiterbarem Connector SDK neu aufgebaut, was es ermöglicht, neue Funktionen schneller verfügbar zu machen. Der HTTP v2-Konnektor unterstützt zusätzliche Authentifizierungstypen, Keep-Alive-Verbindungen und URL-Parameter in Anfrage-/Antwort-Schemas. Die zukünftige Entwicklung wird sich auf diesen Konnektor konzentrieren.
Jitterbit unterstützt sowohl die HTTP- als auch die HTTP v2-Connectoren.
Jitterbits langfristige Absicht ist es, den HTTP-Connector abzulehnen, was gemäß Jitterbits End-of-life-Richtlinie angekündigt wird. Derzeit gibt es keinen Zeitplan für die Abkündigung, und der HTTP-Connector bleibt vollständig unterstützt. Wir empfehlen, bestehende HTTP-Verbindungen und -Aktivitäten, wenn möglich, in HTTP v2 umzuwandeln.
Anwendungskonnektoren
Zahlreiche Anwendungskonnektoren sind verfügbar und werden weiterhin entwickelt.
In den meisten Fällen wird empfohlen, einen Anwendungskonnektor zu verwenden, wenn einer für Ihren Endpunkt verfügbar ist, anstatt einen der generischen HTTP-Connectoren zu nutzen. Anwendungskonnektoren bieten oft endpunktspezifische Funktionen, die einfacher zu konfigurieren sind, wenn der spezifische Konnektor verwendet wird, anstatt die generischen Konnektoren. Wenn Sie jedoch einen spezifischen Bedarf haben, der im Anwendungskonnektor nicht verfügbar ist, ist die Verwendung eines generischen Konnektors eine logische Alternative.
Angesichts der Absicht von Jitterbit, den HTTP-Connector letztendlich abzulehnen, empfehlen wir, Anwendungskonnektoren oder den HTTP v2-Connector in neuen Projektdesigns wo immer möglich zu verwenden.
Benutzerdefinierte Konnektoren
Für erweiterte Flexibilität können Sie benutzerdefinierte Konnektoren mit dem Connector Builder oder dem Connector SDK erstellen:
- Connector Builder
 Benutzerdefinierte Connector Builder-Konnektoren können so gestaltet werden, dass sie entweder grundlegende oder keine Authentifizierung verwenden. Bei der Erstellung des Konnektors wählen Sie aus den unterstützten HTTP-Methoden GET, POST, PUT, DELETE, PATCH oder MERGE, um die entsprechenden Aktivitäten zu erstellen, die die Benutzer konfigurieren können.
- Connector SDK
 Benutzerdefinierte Connector SDK-Konnektoren können so gestaltet werden, dass sie jeden Authentifizierungstyp verwenden, und die Unterstützung für jede Methode kann in den Konnektor integriert werden. Diese Art von benutzerdefiniertem Konnektor bietet die größte Flexibilität, da ein Entwickler Verbesserungen gemäß den Bedürfnissen Ihrer Organisation hinzufügen kann.
Fähigkeitsmatrix für Jitterbit-Connectoren
| Connector-Fähigkeit | HTTP v2 Connector | HTTP Connector | Anwendungsspezifischer Connector | 
|---|---|---|---|
| Unterstützung für Autorisierung | Eine HTTP v2-Verbindung unterstützt diese Autorisierungstypen: | Eine HTTP-Verbindung unterstützt diese Autorisierungstypen: 
 | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für HTTP-Methoden | Der HTTP v2-Connector unterstützt diese Methoden mit diesen Aktivitäten desselben Namens: | Der HTTP-Connector unterstützt diese Methoden mit diesen Aktivitäten desselben Namens: 
 | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für Betriebsmuster für Aktivitäten, die als Quellen verwendet werden | HTTP v2-Aktivitäten, die als Quelle verwendet werden, können mit diesen Mustern verwendet werden: 
 | HTTP-Aktivitäten, die als Quelle verwendet werden, können mit diesen Mustern verwendet werden: 
 | Die Unterstützung variiert je nach Connector. Die meisten anwendungsspezifischen Connector-Aktivitäten, die als Quelle verwendet werden, können mit diesen Mustern verwendet werden: 
 | 
| Unterstützung für Betriebsmuster für Aktivitäten, die als Ziele verwendet werden | HTTP v2-Aktivitäten, die als Ziel verwendet werden, können mit diesen Mustern verwendet werden: 
 | HTTP-Aktivitäten, die als Ziel verwendet werden, können mit diesen Mustern verwendet werden: 
 | Die Unterstützung variiert je nach Connector. Die meisten anwendungsspezifischen Connector-Aktivitäten, die als Ziel verwendet werden, können mit diesen Mustern verwendet werden: 
 | 
| Schema-Unterstützung | Benutzerdefinierte Anforderungs- und Antwortschemata sind optional und können vom Benutzer während der Konfiguration der HTTP v2-Aktivität bereitgestellt werden. Wenn keine benutzerdefinierten Schemata in der Aktivitätskonfiguration bereitgestellt werden, werden Standard-Schemata verwendet, die ein allgemeines REST-API-Design unterstützen. | Benutzerdefinierte Anforderungs- und Antwortschemata sind optional und können vom Benutzer während der Konfiguration der HTTP-Aktivität bereitgestellt werden. | Die Unterstützung variiert je nach Connector. Anforderungs- und Antwortschemata können direkt vom Endpunkt generiert werden oder die Unterstützung für benutzerdefinierte Schemata kann verfügbar sein. | 
| Dateibasierte Jitterbit- und JavaScript-Funktionen | Schreiben Sie die Daten in eine temporäre Datei und verwenden Sie dann den String-Referenzpfad zu dieser temporären Datei-Aktivität als Parameter sourceIdodertargetIdder Funktion. | Verwenden Sie den String-Referenzpfad zur Aktivität als Parameter sourceIdodertargetIdder Funktion. | Schreiben Sie die Daten in eine temporäre Datei und verwenden Sie dann den String-Referenzpfad zu dieser temporären Datei-Aktivität als Parameter  Einige Connectoren können zusätzliche Unterstützung bieten. | 
| Anzahl der Wiederholungen | Maximal 5 Wiederholungen, die in bis zu 5-Sekunden-Intervallen gesendet werden. Unterstützt nur auf privaten Agenten. | Höhere maximale Anzahl (nicht mehr als 5 Wiederholungen empfohlen) in bis zu 5-Sekunden-Intervallen. Unterstützt nur auf privaten Agenten. | Die Unterstützung variiert je nach Connector. | 
| Übertragungszeitüberschreitung | Standardmäßig 30 Sekunden. Der Schlüssel  | Standardmäßig 3.600 Sekunden. Die Jitterbit-Quellvariablen und Zielvariablen, deren Namen mit  | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für Weiterleitungen | Standardmäßig 50 Weiterleitungen. Der Schlüssel  | Weiterleitungen werden standardmäßig nicht verfolgt. Die Jitterbit-Quellvariablen und Zielvariablen, deren Namen mit  | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für Formulardaten | Die Multipart-Einstellung der HTTP v2 POST, PUT und PATCH-Aktivitätskonfiguration kann verwendet werden, um RFC 1687-Formular-Uploads zu unterstützen, wenn Standard-Schemata verwendet werden. Nicht unterstützt mit benutzerdefinierten Schemata. | Die Jitterbit-Zielvariablen, deren Namen http.form_dataenthalten, können mit RFC 1687-Formular-Uploads verwendet werden. | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für das Entfernen von nachgestellten Leerzeichen und Zeilenumbrüchen | Leerzeichen und Zeilenumbrüche in der Anfrage bleiben standardmäßig unverändert. Der Schlüssel  | Die http.remove_trailing_linebreaksJitterbit-Zielvariable kann verwendet werden, um führende und nachgestellte Leerzeichen sowie Zeilenumbrüche zu entfernen. | Die Unterstützung variiert je nach Connector. | 
| Keep-Alive-Einstellung | Die Keep Alive-Einstellung in einer HTTP v2-Verbindung kann verwendet werden, um eine einzelne TCP-Verbindung für mehrere HTTP-Anfragen und -Antworten offen zu halten. | Nicht unterstützt. | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für Cookies | Nicht unterstützt. | Unterstützt nur, wenn ein privater Agent verwendet wird und die jitterbit.http.enable_cookies-Einstellung in der Agent-Konfigurationsdatei (jitterbit.conf) auftruegesetzt ist. | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für benutzerdefinierte Zertifikate | Nicht unterstützt. | Ein Zertifikat zur Authentifizierung beim HTTP-Server kann über das Feld Zertifikat einer HTTP-Verbindung angegeben werden. | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für Expect: 100-continue | Nicht unterstützt. | Der Expect: 100 continue-Header wird gesendet, wenn Expect 100-continuein einer HTTP-Verbindung ausgewählt ist. | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für schwache Chiffren | Nicht unterstützt. | HTTP-Server, die schwache Chiffren (DES/3DES und RC4) verwenden, können verwendet werden, wenn Schwache Chiffren zulassen in einer HTTP-Verbindung ausgewählt ist. | Die Unterstützung variiert je nach Connector. | 
| Unterstützung für Jitterbit-Plugins | Nicht unterstützt. | Jitterbit-Plugins sind verfügbar, um während des letzten Schrittes der Konfiguration der HTTP-Aktivität konfiguriert zu werden (siehe Plugins, die zu einer Aktivität hinzugefügt wurden). | Nicht unterstützt. | 
| Unterstützung für Protokollierung auf privaten Agenten | Der HTTP v2-Connector unterstützt ausführliches Protokollieren von Connectors. | Der HTTP-Connector unterstützt Curl-Debug-Protokollierung. | Die Unterstützung variiert je nach Connector. | 
Hinweis für HTTP GET-Aktivitäten
Wenn eine HTTP GET-Aktivität als Zielaktivität 1 / Quellaktivität 2 im Zwei-Ziel-HTTP-Archivmuster verwendet wird, gibt die Aktivität eine Nachricht zurück, die den Erfolg {"success": true} oder den Misserfolg {"success": false} anzeigt, anstelle der tatsächlichen Antwort.
Dateibasierte Jitterbit- und JavaScript-Funktionen
Dateibasierte Jitterbit- und JavaScript-Funktionen sind unten aufgeführt. HTTP-Connector-Aktivitäten können direkt als Funktionsparameter verwendet werden. Für die Verwendung mit HTTP v2 und Anwendungs-Connectors schreiben Sie die Daten in eine temporäre Datei und verwenden dann diese temporäre Datei in der Skriptfunktion.
Jitterbit-Funktionen
- ArchiveFile
- Base64EncodeFile
- DBLoad
- DBWrite
- DeleteFile
- DeleteFiles
- DirList
- FileList
- FlushAllFiles
- FlushFile
- ReadFile
- SfLookupAllToFile
- WriteFile
JavaScript Jitterbit-Funktionen