Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

...

Beschreibung

Der HTTP-Rest-Manager ermöglicht es dem Benutzer, Anforderungen an einen Server zu senden und die zurückgegebene Antwort in einer Variablen zu speichern, und kann mit den Werten in JS arbeiten.

...

Voraussetzung: Der ausführende Benutzer/Server der Anwendung (Betriebssystembenutzer, nicht der aktuell angemeldete Benutzer) muss den gewünschten Endpunkt erreichen können.

Info

Diese Zeichen :/?#[]@ sind Teil der generischen Syntax für einen URI (definiert in RFC 3986) und müssen durch den entsprechenden URL / Prozentwert ersetzt werden. In unserem Beispiel wurden [ und ] durch %5B und %5D ersetzt. Sehen Sie sich https://www.w3schools.com/tags/ref_urlencode.ASP an, wenn Sie Ihren URI überprüfen wollen

...

Variante 1: REST CALL in JS

...

Code Block
languagejs
jqxhr = jQ.ajax({ 
			url: '/loom-portal/rest/HttpRestManager?<<?>>', 
			type: 'GET', 
		}).success(function(data){ 
			//Function to be called if the request succeeds 
		}).fail(function(data){ 
			//Error Handling 
		});
Info

Beim Aufruf des HttpRestManager über JavaScript muss der

...

Type 'GET' sein.

URL (HTTPRestManager)

Code Block
languageactionscript3
URL: '/loom-portal/rest/HttpRestManager?<<PARAMETER>>

...

Code Block
languagejs
$.ajax({
    url: '/loom-portal/rest/HttpRestManager?hostName='+URL+"&method=GET&additionalHeaders=[%5B" + "NAME_OF_VARIABLE=" + variable + ";" + "NAME_OF_VARIABLE2=" + variable2 + "]%5D",
    type: 'GET',
    success: function(data) {
        if (data.status && data.status == "200") {
        console.log(data);
        }
    }
});

Parameter

Parametername

Standardwert

Beschreibung

Gültige Beispiele

HostName

hostName

Dieser Parameter enthält die URl des angeforderten Servers.

https://demo.com/interface/getExampleData

Methode

method

"POSTEN"

“POST”

Dieser Parameter bestimmt, welche Methode remote aufgerufen wird. "Post" bedeutet, dass der Server eine Eingabe im XML-Format erwartet, die er verarbeitet und zurückgibt. "Get" hingegen bedeutet, dass der Server Daten sendet, ohne dass eine Eingabe erforderlich ist.

Weitere Möglichkeiten sind "delete", "get", "head", "options", "patch", "post", "put"

Other possibilities are “delete”, “get”, “head”, “options”, “patch”, “post”, “put”.

postParameter

Dieser Parameter enthält die Eingabe für den Server im JSON-Format.

"json", "XML", "HTML", "text", "auto"

responseVariable

"SYS.HttpRestManager_response"

Dieser Parameter enthält die Prozessvariable, in der die Serverantwort gespeichert werden soll.

demoResponseVariable

Benutzer

user

Dieser Parameter ist nur erforderlich, wenn der Server eine Identifizierung erfordert und den Benutzernamen des Benutzers enthält.

demoUser

bestehen

pass

Dieser Parameter wird nur benötigt, wenn der Server eine Identifikation benötigt und das Kennwort des Benutzers enthält.

demoPassword

authMethode

authMethod

"

Basic

basic"

Dieser Parameter wird nur benötigt, wenn der Server eine Identifizierung erfordert und die Verschlüsselung enthält, die angewendet werden soll. Eine mögliche Verschlüsselung ist base64, die angewendet wird, indem dieser Parameter auf "basic" gesetzt wird.

"

Oauth

oauth"

"

Basic

basic"

oAuthTokenUrl

Nur erforderlich, wenn authMethod = "oauth"

URL, von der das oauth-Token abgerufen werden soll.

Zugang

access

""

Definiert, welche Gruppen oder Benutzer die Schnittstelle aufrufen und Daten daraus abrufen können. Alle anderen Anrufe von nicht autorisierten Benutzern/Gruppen werden abgelehnt. Mehrere Benutzer/Gruppen können über ',' getrennt werden.
Standardmäßig ist die Schnittstelle für alle Benutzer aufrufbar.
Lassen Sie den Parameter leer/undefiniert für uneingeschränkten Zugriff.

group(exampleGroup), user(exampleUser)

additionalHeaders

Hinzufügen zusätzlicher Header zum Rest-Aufruf

"&method=GET&additionalHeaders=

[

%5B" + "NAME_OF_VARIABLE=" + variable + ";" + "NAME_OF_VARIABLE2=" + variable2 + "

]

%5D"

Beispiel

Javascript (JavaScript)
Code Block
languagejs
var URL = "https://demo.com/interface/getExampleData"; 
var USER = "$enc$-605bc19777d129d182d0c467a54b129"; 
var PASSWORD = "$enc$-eda084ca7ea688d6454add9f9e4bd84"; 

jqxhr = jQ.ajax({ 
			url: '/loom-portal/rest/HttpRestManager?hostName=' + URL + '&method=GET&authMethod=basic&user=' + USER + '&pass=' + PASSWORD + &postParameter=json, 
			type: 'GET', 
			}).done(function(data){ 
				//todo!
			}).success(function(data) { 
			var response = 	data; 
			if (checkIfVariableIsNotNullAndNotUndefinedAndNotEmpty(response)) { 
				var parsedResponse = data; 
				if (typeof parsedResponse === "string") { 
					parsedResponse = JSON.parse(data); 
				} 
				thisPointer.entity.setValue('variable', JSON.stringify(data.response)); 
				thisPointer.entity.mergeLocal(true); 
			} 
		}).fail(function(data) { //Error Handling });
Note

Speichern Sie den Benutzer und das Passwort nicht ohne Maskierung in den JS-Dateien!

Verwenden Sie das Encodermodul, um die Daten zu maskieren.

URL: <<serverAdress>>/encoder/ (Falls nicht vorhanden, wenden Sie sich bitte an den definierten Ansprechpartner)

Funktion checkIfVariableIsNotNullAndNotUndefinedAndNotEmpty \[polyfill\]

...

Code Block
languageactionscript3
URL: '/loom-portal/rest/HttpRestManager/<<name_of_tim.propertie_endpoint>>

Parameter

Parametername

Standardwert

Beschreibung

Gültige Beispiele

HostName

hostName

Dieser Parameter enthält die URl des angeforderten Servers.

https://demo.com/interface/getExampleData

Methode

method

"

POSTEN

POST"

Dieser Parameter bestimmt, welche Methode remote aufgerufen wird. "Post" bedeutet, dass der Server eine Eingabe im XML-Format erwartet, die er verarbeitet und zurückgibt. "Get" hingegen bedeutet, dass der Server Daten sendet, ohne dass eine Eingabe erforderlich ist.

Weitere Möglichkeiten sind "delete", "get", "head", "options", "patch", "post", "put"

Other possibilities are “delete”, “get”, “head”, “options”, “patch”, “post”, “put”.

postParameter

Dieser Parameter enthält die Eingabe für den Server im JSON-Format.

"json", "xml", "html", "text", "auto"

responseVariable

"SYS.HttpRestManager_response"

Dieser Parameter enthält die Prozessvariable, in der die Serverantwort gespeichert werden soll.

demoResponseVariable

Benutzer

user

Dieser Parameter ist nur erforderlich, wenn der Server eine Identifizierung erfordert und den Benutzernamen des Benutzers enthält.

demoUser

bestehen

pass

Dieser Parameter wird nur benötigt, wenn der Server eine Identifikation benötigt und das Kennwort des Benutzers enthält.

demoPassword

authMethode

authMethod

"

Basic

basic"

Dieser Parameter wird nur benötigt, wenn der Server eine Identifizierung erfordert und die Verschlüsselung enthält, die angewendet werden soll. Eine mögliche Verschlüsselung ist base64, die angewendet wird, indem dieser Parameter auf "basic" gesetzt wird.

"

Oauth

oauth"

"

Basic

basic"

oAuthTokenUrl

Nur erforderlich, wenn authMethod = "oauth"

URL, von der das oauth-Token abgerufen werden soll.

Zugang

access

""

Definiert, welche Gruppen oder Benutzer die Schnittstelle aufrufen und Daten daraus abrufen können. Alle anderen Anrufe von nicht autorisierten Benutzern/Gruppen werden abgelehnt. Mehrere Benutzer/Gruppen können über ',' getrennt werden.
Standardmäßig ist die Schnittstelle für alle Benutzer aufrufbar.
Lassen Sie den Parameter leer/undefiniert für uneingeschränkten Zugriff.

group(exampleGroup), user(exampleUser)

Beispiel

Javascript (JavaScript)
Code Block
languagejs
jQ.ajax({
		url: "/loom-portal/rest/HttpRestManager/getRESTCall,
		type: "GET",
	}).done(function (data) {
		console.log('Date from interface is done loading:' + data);
	}).success(function (data) {
		// YOUR CUSTOM CODE HERE
	}).fail(function (data) {
		console.log('There has been an error loading the data from the interface:' + data);
	}).always(function () {
		console.log('The interface call is completed.);
	});
Note

Speichern Sie den Benutzer und das Passwort nicht ohne Maskierung in den JS-Dateien!

Verwenden Sie das Encodermodul, um die Daten zu maskieren.

URL: <<serverAdress>>/encoder/ (Falls nicht vorhanden, wenden Sie sich bitte an den definierten Ansprechpartner)

...

Customizing: REST CALL mit benutzerdefinierten Variablen (über Template-Datei) (JS und tim.properties)

...

Code Block
languagejs
var URL = "https://demo.com/interface/getExampleData"; 
var USER = "$enc$-605bc19777d129d182d0c467a54b129"; 
var PASSWORD = "$enc$-eda084ca7ea688d6454add9f9e4bd84";
var demoVariable = "Demo";

jQ.ajax({ 
	url: '/loom-portal/rest/HttpRestManager' +
		 '?hostName=' + URL + 
		 '&method=POST' +
		 '&authMethod=basic' + 
		 '&user=' + USER + 
         '&pass=' + PASSWORD + 
		 '&responseVariable=variableNameToSaveResponseTo' +
		 '&templatePath=httpBodyGetHeadDataByDemoVariables.json' +
		 '&customVariables=[%5B' + 'custom_variable_name=' + demoVariable + ',custom_variable_name_two=' + demoVariableTwo + ']%5D',
	type: 'GET', 
}).done(function(data){ 
	//todo!
}).success(function(data) { 
	//todo!
}).fail(function(data) { //Error Handling });

...