3

私の問題は、投稿メッセージの送信元の URL を知らずに着信要求を処理する方法がわからないことです。

統合しようとしている Vend API は、次の情報を含む投稿メッセージを URL に送信します。

「POST 本文には、payload という名前のフィールドが含まれます。このフィールドには、フックされたイベントの原因となったオブジェクトの詳細を含む JSON エンコード オブジェクトが含まれます。他のフォーム フィールド (environment や domain_prefix など) が存在する可能性がありますが、存在するとは限りません。

Webhook リクエストで見つかるペイロード オブジェクトは、バージョン 1.0 以降としてマークされた API の新しい部分から受け取るものと同じになりました。したがって、たとえば、製品 Webhook は、/api/1.0/product/{product_id} を要求した場合と同じ製品ペイロードを提供する必要があります。」

http://docs.vendhq.com/webhooks.html (詳細へのリンクはこちら)

私はASP MVCにかなり慣れていないので、最善の方法を見つけるのに苦労しています。最終的に、入力された名前と値のペアをモデルにマップする必要があります。

どんな助けでも大歓迎です。

4

1 に答える 1

1

投稿メッセージの送信元の URL がわからないということは、Webhook が送信されている URL の形式 (パスとパラメーター) がわからないということだと思います。リクエストを処理するために MVC アプリが知る必要があるのは、ポスト パラメーターの名前だけです。この場合は、ドキュメントから含めたスニペットに従って、JSON 文字列を含むという名前の単一のパラメーターです。 payload

このデータを取得するには、いくつかの方法があります。最も簡単な方法の 1 つは、ASP.NET MVC の POST パラメーターのコントローラー アクション メソッド パラメーターへの自動マッピングを利用することです。

public ActionResult MyActionMethod(string payload)
{ 
   // 'payload' will be automatically populated with the json string from the POST payload
}

もちろん、.NET フレームワークまたは任意の数のサードパーティ ライブラリを使用して、いくつかの方法で実行できる json ペイロードを解析する必要があります。

于 2014-11-16T14:51:06.987 に答える