問題タブ [webhooks]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
krl - JSON を受信する KRL Webhook
Amazon SNS の Webhook をセットアップしようとしています。SNS は JSON オブジェクトを Webhook に送信します。KRL ドキュメントに基づいて、event:param('name') を使用してイベント パラメータを取得できます。これはフォーム エンコードされたデータでは機能しますが、JSON ではどうでしょうか。
postbin.org に電話をかけたところ、postbin は次のように報告しました。
KRLで書きたいことは次のとおりです。
これはおそらく HTTP フォームでエンコードされたデータに対しては機能しますが、JSON では次のものが必要になると思います。
ここで説明されている 2 番目の方法を使用する必要がありますか? event:param('body') は SNS メッセージから JSON データを取得しますか?
json - ASP.NET MVC: アクションごとまたはルートごとに値プロバイダーを指定しますか?
ASP.NET MVC 3 でアクションを設定して、Mercurial Webhook リクエストのペイロードを処理しようとしています。この場合、 Kiln によって生成されます。
ペイロードは JSON ですが、残念ながら content type の URL エンコードされたフォーム値として送信されます。これは、パラメータ名なしでエンコードされていないものapplication/x-www-form-urlencoded
を使用application/json
して送信すると、あまりにも簡単で標準的なものになるためです。
これは、標準のコンテンツ タイプJsonValueProviderFactory
を使用する要求しか取得しないため、新しいものだけを使用できないことを意味します。そしてもちろん、JSON ではなく実際にフォーム データを受け取るアプリ内の他の場所でフォーム データ値プロバイダーを使用するために、これらのリクエストが必要なためapplication/json
、ファクトリにリクエストをピックアップさせることはできません。application/x-www-form-urlencoded
では、ValueProvider または ValueProviderFactory を特定のアクションまたはルートにのみ使用するように指定する方法はありますか?
php - Webhook からの応答をキャプチャする
PostBin のように、Webhook から POST をキャプチャして DB に保存する簡単なスクリプトはありますか?
ありがとう、B.
rest - Webhook サービス プロバイダーまたはプロジェクト
Webhook 機能を提供してくれるサービス プロバイダーまたはプロジェクトを知っている人はいますか? 確かに、HTTP/S POST を送信するだけの問題ですが、耐久性のためのキューと何らかの再試行ロジックを実装する必要があります。これを提供するプロジェクト、パッケージ、またはサービスがある場合、これを実装しないことをお勧めします。
私はpubsubhubbubを見つけましたが、それは参照用のアプリケーションとプロトコルの仕様にすぎません。これが利用可能であれば、これの製品実装は素晴らしいことです。
webhooks - postbin.orgのビンを削除することは可能ですか?
Webhookテストを処理するためにテストpostbin.orgbinを作成しました。
このビンを削除してアクセスできなくなる方法はありますか?
機密性の高いものは何も投稿されていませんが、可能であればすべて同じように削除したいと思います。
ありがとう!
python - ソケットを使用して発信 HTTP 呼び出しをテストしますか?
django で webhooks コールバックの単体テストを作成しようとしています。私のアプリケーションは、少しのコードを実行すると、選択した URL に POST 要求を送信するように設定されています。これが、私がテストしようとしている機能です。
このリクエストをリッスンし、送信されたかどうかを通知するソケットをセットアップしたいと思います。これは次のようになると思います:
このままでは、プログラムが s.accept() 行でハングアップし、リクエストを送信しないため、まったく機能しません。
私は非同期プログラミングにまったく慣れていないので、アドバイスを利用できます。Python のドキュメントを調べると、socket モジュールだけではこれを実行できないと確信しています。非同期の魔法が必要です。
c# - nservicebus + webhooks +Errors +MaxRetries
機能の説明
NServiceBus ゲートウェイ ( http://docs.particular.net/nservicebus/gateway/ ) は、NServiceBus インフラストラクチャを使用して内部Webhook を実現する方法のようです。
この概念をさらに進めて、システムに Webhook URL を登録するためのアクセス権を持つサードパーティ サブスクライバーにいくつかのイベントを開く必要があります。
レビュー
2 つの初期ウィンドウ サービスを作成する予定です。
1) 関心のある特定のメッセージにサブスクライバーとして追加できる WebHookBatchService。
2) WebHookProcessService - WebHookBatchService によって送信された 1 つのメッセージを実際に処理します。
メッセージが WebHookBatchService.Queue で受信されると、WebHookBatchService は特定のテナント + メッセージ タイプのすべてのサブスクライバーを検索し、foreach は WebHookProcessService の WebHookProcessService.Queue に個々のメッセージを送信します (バッチをブリッジするために nservicebus ロードバランサーのインスタンスを作成できます)。おそらくhttp://restsharp.org/を使用して、実際のメッセージを実際に処理します。
質問
現在、これを行っている既存のオープン ソース プロジェクトはありますか?
サブスクライバーの耐久性を制御できない場合、エラーをどのように管理すればよいでしょうか?
http://wiki.shopify.com/WebHook
まったく同じ Webhook で 19 回連続して失敗した場合、Webhook は削除されます。
Webhook の遅延については言及されていません。再試行ロジックの標準的な遅延で、人々は何を経験しましたか?
その他の考えは次のとおりです。
提案 0: MaxRetries="1". WebHookProcessService.ErrorQueue を毎晩パージします。(再試行なし - 最初に失敗した場合、メッセージの損失が保証されます)
提案 1: 例外キャッチで MaxRetries="1" http 経由で配信されるメッセージの xml バージョンを含む電子メールを送信します。
WebHookProcessService.ErrorQueue を毎晩パージします。-- 潜在的なスパムの問題があると思います。
提案 2: nservicebus MaxRetries は遅延なくすぐに再試行します。そのため、(1 時間 - 24 時間) バケット キューを作成し、RetrySchedulerService を使用する必要がありますが、サービス エンドポイントが機能し始めたときに、DateCreated で順序付けられていない方法で一度に 25 のメッセージを取得すると、これを維持するのが難しく、サブスクライバーを混乱させると思います。 .
アイデア募集中…
php - PHPでキャンペーンモニターのWebhookペイロードを取得するにはどうすればよいですか?
私はPHPを使用して、誰かがニュースレターの購読を解除したときにWebhookペイロードをフェッチするシステムを作成していますが、PHPで実際のペイロード情報をフェッチする方法を理解できます。
フェッチするPOSTデータはありますか?PHPはこのPOSTデータをどのように検索しますか?
更新:私は何かに取り組んでいる可能性があります。関数http_get_request_body()
がうまくいくように見えますか?
c# - Mailgun から ASP.NET C# で HTTP POST を受信するにはどうすればよいですか?
http://documentation.mailgun.net/quickstart.htmlには、Django の http ハンドラのサンプル コードが含まれています。
ASP.NET C# で同等のものは何ですか?
たとえば、Request.Form["sender"] を試してみましたが、Mailgun ログに HTTP 500 エラー コードが記録されます。
ご協力いただきありがとうございます。