Medieneinheit-Dienst – Methoden
Die folgenden Dienste können verwendet werden, um die URL für das Abrufen des dynamischen Inhalts für
Medieneinheiten zu erstellen.
String GetProxyUrl(String targetUrl, [Boolean isAbsoluteUrl] )
Zur Laufzeit kombiniert die Media-Entität die konfigurierte Basis-URL und den url-Parameter, um die vollständige Ziel-URL zu erstellen. Beispiel:
http://my.thingworx.server:8080/Thingworx/MediaEntities/
MyProxy/Content/...trailing part of real url
|
Damit die URLs zur Verwendung in Mashups ordnungsgemäß erstellt und codiert sind, verwenden Sie die Dienstmethode GetProxyUrl.
|
|
Geben Sie für die SSO-Authentifizierung (Single Sign-On, Einmalanmeldung) eine URL ein, die OAuth unterstützt.
|
Parameter
• targetUrl
URL zum Inhalt auf dem Ursprungsserver. Dieser muss vom ThingWorx Server erreichbar sein.
|
Wenn der Inhalt auf dem Ursprungsserver vom Client-Browser erreichbar ist, müssen Sie keine Media-Entität verwenden. Stattdessen können Sie die URL direkt in einem Bild-Widget oder Link-Widget verwenden.
|
• isAbsoluteUrl
Dieser Parameter ist optional.
◦ true
Stellen Sie diesen Parameter auf "true" ein, wenn die Ziel-URL eine komplette, absolute URL zum Ursprungsserver ist. targetUrl muss mit der konfigurierten Basis-URL beginnen.
◦ false
Stellen Sie diesen Parameter auf "false" ein, wenn die Ziel-URL relativ zur konfigurierten Basis-URL ist. targetUrl wird an die Basis-URL angefügt, um die tatsächliche Ziel-URL zu bestimmen.
Wenn dieser Parameter nicht angegeben wird, ist der Standardwert "false" (relativ). Relative URLs sind nützlich, um sie von Mashups zu verwenden, weil die konfigurierte Basis-URL der Media-Entität unbekannt sein kann.
• twxME_ClientFollowRedirect
Dieser Parameter ist standardmäßig "falsch". Bei "wahr" wird die angegebene Umleitungs-URL befolgt.
Beispiele
Diese Beispiele setzen voraus, dass der Inhalt nicht vom Browser des Endbenutzers erreichbar ist. Wenn URLs vom Browser erreichbar sind, verwenden Sie sie in Ihrem Mashup; die Verwendung einer Media-Entität als Proxy für den Inhalt ist nicht erforderlich.
• Diese Beispiele verwenden eine neue Medieneinheit namens MyProxy.
• Die URL auf dem ThingWorx Server, auf dem der Inhalt verfügbar gemacht wird, ist Inhalts-URL.
• Die Beispiele setzen voraus, dass sich der ThingWorx Server auf thingworx.my und der eigentliche Inhalt auf content.acme.com befindet.
Einzelne einfache URL
• Ziel-URL: http://content.acme.com/images/example.jpg
Dies ist der gewünschte Inhalt.
• MyProxy-URL: http://content.acme.com/images/example.jpg
• Inhalts-URL: http://thingworx.my/MediaEntities/MyProxy/Content
Dies ist die URL, wobei ThingWorx als Proxy für den tatsächlichen Inhalt dient.
Inhalt mit POST-Anforderungen
Medieneinheiten mit dynamischem Inhalt können jetzt POST-Anforderungen akzeptieren. Hiermit kann Inhalt aus APIs abgerufen werden, die JSON-Parameter akzeptieren. Der Anforderungstext in der Anforderung an die MediaEntity wird an die Ziel-URL weitergeleitet, und das Ergebnis dieser Anforderung wird über ThingWorx zurückgestreamt.
Mehrere Inhalts-URLs
In der Regel verarbeitet ein einzelner Ursprungsserver Inhalt von vielen zugehörigen URLs. Statt eine Medieneinheit für jede URL einzurichten, können Sie eine einzelne Medieneinheit als Proxy für viele verknüpfte Ursprungs-URLs verwenden.
• Ziel-URLs: http://content.acme.com/images/[image1.jpg, image2.jpg, image3.jpg. …]
• MyProxy-URL: http://content.acme.com/images/
• Inhalts-URLs:
◦ http://thingworx.my/MediaEnties/MyProxy/Content/image1.jpg
◦ http://thingworx.my/MediaEnties/MyProxy/Content/image2.jpg
◦ http://thingworx.my/MediaEnties/MyProxy/Content/image3.jpg
◦ http://thingworx.my/MediaEnties/MyProxy/Content/...
In diesem Fall verkettet die Medieneinheit die Basis-URL und den Parameter url und verwendet dies für die tatsächliche Ziel-URL, die als Proxy für Inhalt dient.