最初に、私はXero APIを使用していません。これは特に私が思うXeroよりOAuth2の質問です。OAuth2エンドポイント投稿リクエストXero
問題が一般的なOAuth2問題かOAuth2のXero実装であるかどうかは不明です。私は首尾よく認証でき、Xeroから私のトークンなどを得ることができます。請求書や連絡先のエンドポイントへのGetリクエストを成功させることさえできます。私の問題は何かをPOSTしようとしている、つまり請求書を作成しようとしています。
サーバーは、400 Bad Requestで応答します。 XMLをAPIテスターに入れて、実際の投稿データが正しいことを確認しました。すべてが適切です。 、(POST)、クエリ文字列?oauth_signature=[sig here]
、および実際の投稿データURLがエンコードされ、ストリーム経由で送信されるべきではありませんか?私の実装は正しいですか?問題の別の場所を調べるべきですか?フォームに送信されたデータは署名に含まれるはずですか?
{
byte[] reqData = encode.GetBytes(postData);
HttpWebRequest request = WebRequest.CreateHttp(url + querystring) as HttpWebRequest;
request.Method = "POST";
try {
using (Stream stream = request.GetRequestStream) {
stream.Write(reqData, 0, reqData.Length);
}
using (HttpWebResponse response = request.GetResponse) {
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
dynamic responseFromServer = reader.ReadToEnd();
return responseFromServer;
}
} catch (Exception ex) {
}
}