SOAP-Methoden in JavaScript

Dies ist das JavaScript, das auf dem Adobe Campaign-Server ausgeführt wird.

Statische Methoden

Statische SOAP-Methoden werden aufgerufen, indem eine Methode für das Objekt aufgerufen wird, das das Schema darstellt. Schema sind Eigenschaften von "Namensraum"-Objekten. Bei diesen Namensräumen handelt es sich um globale Variablen. Daher stellen z. B. xtk- oder nms-Variablen die entsprechenden Namensraum dar.

Im folgenden Beispiel wird die statische PostEvent-Methode des Schemas xtk:workflow aufgerufen:

xtk.workflow.PostEvent("WKF1", "signal", "", $recipient-id='123', false) 

Nicht-statische Methoden

Um nicht-statische SOAP-Methoden zu verwenden, muss zunächst eine Entität mit den Methoden "get"oder "create"für die entsprechenden Schema abgerufen werden.

Im folgenden Beispiel wird die ExecuteQuery-Methode des Schemas "xtk:queryDef"aufgerufen:

var query = xtk.queryDef.create(
  <queryDef schema="xtk:workflow" operation="select">
    <select>
      <node expr="@internalName"/>
    </select>
  </queryDef>
)

var res = query.ExecuteQuery()

for each (var w in res.workflow) 
  logInfo(w.@internalName)

Beispiele

  • Abfrage auf der Empfänger-Tabelle mit einer "get"-Operation:

    var query = xtk.queryDef.create(  
      <queryDef schema="nms:recipient" operation="get">    
        <select>      
          <node expr="@firstName"/>      
          <node expr="@lastName"/>      
          <node expr="@email"/>    
        </select>    
        <where>      
          <condition expr="@email = 'peter.martinez@adobe.com'"/>    
        </where>  
      </queryDef>)
    
    var recipient = query.ExecuteQuery()
    
    logInfo(recipient.@firstName)
    logInfo(recipient.@lastName)
    
  • Abfrage auf der Empfänger-Tabelle mit einem "Select"-Vorgang:

    var query = xtk.queryDef.create(  
      <queryDef schema="nms:recipient" operation="select">    
        <select>      
          <node expr="@email"/>      
          <node expr="@lastName"/>      
          <node expr="@firstName"/>    
        </select>    
        <where>      
          <condition expr="@age > 25"/>    
        </where>    
      </queryDef>)
    
    var res = query.ExecuteQuery()
    
    for each (var recipient in res.recipient) 
    {  
      logInfo(recipient.@email)  
      logInfo(recipient.@firstName)  
      logInfo(recipient.@lastName)
    }
    
  • Daten in die Empfänger-Tabelle schreiben:

    xtk.session.Write(<recipient _operation="insert" lastName="Martinez" firstName="Peter" xtkschema="nms:recipient"/>);
    

Auf dieser Seite

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now