2016-12-12 4 views
2

ich zugreifen erstellt eine Azure Funktion in C#, die mehr als ein Parameter in einer JSON-Antwort zurückgibt:Wie Azure Funktion JSON Antworteigenschaften in Azure Logic Apps

return req.CreateResponse(HttpStatusCode.OK, new { 
    empId= "e101", name = "John" 
}); 

Ich bin in der Lage, diese Funktion in Azure zugreifen Logik-Apps, aber ich habe keine Ahnung, wie Sie auf die einzelnen zurückgegebenen Eigenschaften zugreifen können.

Antwort

1

Sie müssen zur Logic App Code Ansicht wechseln und Ihre verbindlichen Ausdrücke ändern, um dies zu tun.

Zum Beispiel habe ich eine Azure-Funktion wie Ihre erstellt und eine Http Response-Aktion hinzugefügt, die eine der JSON-Eigenschaften aus meiner Funktionsantwort verwendet. Im Logic App Designer bin ich an die gesamte von meiner Funktion zurückgegebene Body gebunden. Dann in der Codeansicht geändert ich die Bindung Ausdruck der spezifischen Körper Eigenschaft zuzugreifen empId (wo <function-app-name> Ihre App-Name sein wird):

"Response": { 
    "inputs": { 
     "body": "@body('<function-app-name>')['empId']", 
     "statusCode": 200 
    }, 

sollten Sie in der Lage sein, Ihre Aktion auf die gleiche Art und Weise zu modifizieren, um die JSON zuzugreifen Eigenschaften. Sie werden auch bemerken, dass nach dem Zurückschalten auf den Designer die gebundenen Eigenschaften korrekt angezeigt werden.

Wir werden diese Erfahrung im Laufe der Zeit verbessern, so dass Sie nicht auf Code wie folgt herunterlassen müssen.

+0

Vielen Dank, es hat funktioniert. obwohl ich mochte {body ('azure_fun_Name'). empId} –

+0

Meine Antwort oben geklärt, danke. – mathewc

0

Es gibt jetzt einen neuen Aktionsaufruf "Parse JSON", mit dem Sie das Schema definieren und die Antwort parsen können, so dass Sie ein schönes Designerlebnis zum Erfassen von Eigenschaften erhalten. Lassen Sie es mich wissen, wenn Sie Fragen dazu haben.

+0

wird versuchen und Sie bald wissen lassen. Vielen Dank :) –

Verwandte Themen