APIRequest¶
Kurzbeschreibung¶
APIRequest ist ein Inlet Brick. Er registriert sich bei dem Endpoint-Provider, um dort einen Endpoint zu anzulegen. Requests die an diesen Endpoint gehen, werden vom Endpoint-Provider weitergeleitet.
Output¶
APIRequest besitzt einen Output-Port.
Request = {
"RequestId" -> string,
"Header" -> <string -> variant>,
"Request" -> < string -> variant>
};
RequestId
ist die Identifikationsnummer der Anfrage. Sie wird vom
Endpoint-Provider vergeben. Request
der Inhalt der Anfrage.
Parametrisierung¶
APIRequest besitzt folgende Parameter:
Token
Endpoint
EndpointID
Method
Alle Parameter sind nicht direkt durch den Nutzer konfigurierbar. Sie werden automatisch vom FlowManager gesetzt, abhängig davon, welche vom Nutzer angelegte API und welcher Endpoint gewählt werden.
Token¶
Token
ist ein Authentifizierungstoken. Dieser ist optional. Wird Token
gesetzt, so wird Nachricht nur in den Flow geleitet, wenn die Anfrage das
Flag mit Authorization: <Token>
verwendet.
Standardwert : ``
secret
Method¶
Method
ist die Request Methode.
Standardwert : ``
string
Endpoint¶
Endpoint
ist der Pfad des Requests HOST:PORT/endpoint
.
Standardwert : ``
string
EndpointID¶
EndpointID
ist ein Hilfsparameter, der dem FlowManager erlaubt Neu- von
Umkonfigurationen zu unterscheiden.
Standardwert : ``
string
Funktion¶
APIRequest kommuniziert mit dem Endpoint-Provider mittels zmq
. Zu erst
registriert sich APIRequest bei dem Endpoint-Provider mit den folgenden
Informationen: Endpoint
und Token
. Anschließend
werden die Anfragen unter HOST:PORT/endpoint
an APIRequest weitergeleitet. Wurde Token
gesetzt, so muss die Nachricht im
http
-Kopf das folgende Argument beinhalten: Authorization: <Token>
. Sonst
werden die Nachrichten nicht weitergeleitet. http
-Anfragen, die nicht
die konfigurierten Methoden verwenden, werden abgelehnt. Sollte der
Endpoint-Provider nicht funktionieren, schaltet sich APIRequest ab.
Python-Module¶
APIRequest benutzt folgende Python-Module:
zmq