私はWebアプリケーションにpayuを統合しています。問題は私が新しい注文を要求することができないことですそれは私のアプリで禁止されている403を返しますが、同じデータで私はそれを郵便配達しているAPIから200を得ることができます。 私は、トークン、作成された承認、送信されたヘッダ(認可、content-type、content-length)を取得しました。 私のpostメソッドです。Payu OrderCreateRequest returns 403
var request = (HttpWebRequest)WebRequest.Create(new Uri(Url));
var postData = RawData;//json data
request.Method = "POST";
request.ContentType = ContentType;
if (Headers != null) // add headers
{
foreach (var header in Headers)
{
request.Headers.Add(header.Key, header.Value);
}
}
var data = Encoding.UTF8.GetBytes(postData);
request.ContentLength = data.Length;
using (var stream = new StreamWriter(request.GetRequestStream()))
{
stream.Write(data);
}
try
{
var response = (HttpWebResponse)request.GetResponse();
var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
return responseString;
}
catch (WebException e)
{
return null;
}
それは 'request.ContentLength = data.Length'を設定するときは、*データ*を使用している目的にされているが、その後、' stream.Write(POSTDATA)に* POSTDATA *を使用; ' - またはことをやりました事故によって起こる? (専門家はいません...潜在的なミックスアップを見て) –
@PeterB私はさまざまな方法を試していますが、postDataをデータに変更するのを忘れました。同じ状況が起こります。あなたの注意のためにありがたいです – snncvlk