2017-02-08 3 views
1

javascriptの紺色の機能で青いサービスバスの出力に完全な仲介メッセージを送信する問題があります。 ドキュメントには、customerPropertiesを含まない単純な本文メッセージhttps://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-service-busしか表示されません。紺色の機能のバスから完​​全な仲介メッセージを送信します。

完全な仲介メッセージを作成しようとして、これまでに失敗しました。すべてが本体に入ります。

enter image description here enter image description here

var message = {'body' : 'test', 'customProperties' : {'fromsystem':'sap'}}; 
context.bindings.outputSbMsg = message; 
context.done(null, res); 

答えて

1

我々はC#で持っているいくつかの種類の情報を失うと残念ながら、これは、ノードの制限の一つです。

bodyのメッセージをカスタムプロパティでtestに送信しようとしている可能性がありますが、bodyのサブプロパティでオブジェクト全体を本文として送信しようとしている可能性もあります。 Azure関数は、返すすべてのものが体の中に入ることを前提にしています。回避策として

、あなたはできます

  • 溝出力が結合して、ノード機能プットを持っている実際のBrokeredMessageタイプ
  • でC#やF#のを使用し、ServiceBus sdk for node直接
  • の代わりにノードを使用その結果をキューに入れ、C#関数を呼び出して正確なBrokeredMessageを作成します。
+0

sad :)統合は本当に簡単でした。あなたが提案したように私はC#にフォールバックするかもしれません。私は中間のキュー+ルールとSETプロパティを持つ第4のソリューションについて考えましたが、キューではなくサブスクライバだけが可能です。 – camous

+0

[C#アプローチ] Runメソッドのプロトタイプに 'BrokeredMessage outputSbMsg'を追加するには、非同期から同期に切り替える必要がありました。私は別の方法があるかどうかわかりません:/それは働いています:) – camous

+0

タイプIAsyncCollector を使用できます。 https://jhaleyfiles2016.blob.core.windows.net/public/Azure%20WebJobs%20SDK%20Cheat%20Sheet%202014.pdf –

関連する問題