OK、私はサードパーティのWeb APIを使用しており、Webフックを使用して「何かが起こった」ときに通信します。彼らの側で「何かが起こった」とき、彼らは私のコールバックURLにPOSTリクエストを送信します。
私の質問は、そのPOSTをキャッチしたら、そこからパラメーターを抽出する方法を教えてください。
パラメータを添付して独自のコールバックURLを呼び出す統合テストシナリオを構築しようとしているので、「開発マシンにコールバックをヒットさせるにはどうすればよいですか」というルーチンを実行する必要はありません。
これが私がシミュレートしようとしている方法ですが、これが私のコールバックURLへの呼び出しがどのように見えるかを正確に表したものであるかどうかはわかりません。
[Test]
public void {
const string localCallbackUrl = "http://localhost/callback/callbackaction";
HttpWebRequest request = WebRequest.Create(localCallbackUrl) as HttpWebRequest;
request.Method = "POST";
request.ContentType = "application/x-www.form-urlencoded";
request.Accept = "application/json";
string parameters = string.Format("param1={0}¶m2={1}, "foo", "bar");
byte[] byteArray = Encoding.UTF8.GetBytes(parameters);
request.ContentLength = byteArray.Length;
Stream dataStream = request.GetRequestStream();
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();
var response = request.GetResponse();
}
「GetResponse()」の呼び出しはコールバックURLにヒットしていますが、Requestオブジェクトのどこにパラメーターが存在するかがわかりません。
注:APIを呼び出すためにリクエストを作成するのと同じ方法でリクエストを作成していますが、それが正しいかどうかは100%確実ではありません。