2017-05-05 4 views
1

저는 Azure 논리 응용 프로그램을 처음 사용했습니다. 서비스 버스를 가지고 json 객체 메시지를 해당 서비스 버스에 전달한 다음 논리 버스에서 서비스 버스를 청취하기위한 조치를 취합니다. 그래서 새로운 메시지가 서비스 버스에 도착할 때마다 로직 애플 리케이션이 enter image description here을 집어 http로 보냅니다.논리 응용 프로그램에서 서비스 버스로부터 콘텐츠 받기

내 질문은 어떻게 서비스 버스의 메시지에서 속성을 잡고 내 http 작업에 전달할 수 있습니다. 나는이

“Id” : “@{json(triggerBody()[‘ContentData’]).id}” 

을 시도하지만 어떻게 큐에 메시지를 보내는

답변

3

를 작동하지 않습니다?

다음
@{json(base64ToString(triggerBody()?['ContentData'])).DestinationPath} 

내 논리 앱이 enter image description here

처럼 보이는 내 경우에는 메시지가 푸른 webjob에서 전송되는 방법입니다

나는 이런 방식으로 JSON 메시지 속성 (의 DestinationPath)을 읽는 BrokeredMessage로 :

당신이 먼저 디코딩 할 필요가 있으므로 Base64로 인코딩되어 ContentData 서비스 버스 메시지의
string jsonMessage = JsonConvert.SerializeObject(myObject); 
Stream streamMessage = new MemoryStream(Encoding.UTF8.GetBytes(jsonMessage)); 
BrokeredMessage msg = new BrokeredMessage(streamMessage); 

client.Send(msg); 
0

, 예를 들어,

“Id” : “@{json(base64ToString(triggerBody()?[‘ContentData’])).id}”