0
APIをリクエストしようとすると、このエラーが発生します。 APIについて いくつかの詳細:メソッドがPOSTで、(私は郵便配達でそれをしようとすると、何の問題)のパラメータは、あまりにも、正しいませんAPIにPOST要求を送信中にエラーが発生しました(この動詞タイプの本文を送信できません)
ここでは私のコードです:
JavaScriptSerializer js = new JavaScriptSerializer();
using (WebClient client = new WebClient())
{
foreach (var ad in documents)
{
var doc = js.Serialize(ad);
var json = "{\"Message\":\"" + doc + "\"}";
var response =
client.UploadValues("apiUrl", new NameValueCollection()
{
{"json", json}
});
}
}
私はUploadValuesであることを読んでデフォルトでPOST。このコードは、単純なコンソールアプリケーションで呼び出されます。なぜこのエラーが出るのか?ここで
'WebClient'と' JavaScriptSerializer'両方がほとんど廃止され、あなたが 'NewtonSoft.Json' –
' VARのJSON =「{で 'HttpClient'を使用する必要があります\ "Message \":\ "" + doc + "\"} ";' Yuk。なぜそれを手で造るのですか?それはちょうどキャッチ可能な構文エラーを求めているだけです。あなたはすでにシリアライザ(古いものですが)とNameValueCollectionを使用していますので、その間に文字列をランダムに作成するのはなぜですか?とにかく、郵便配達では動作しますが、これでは動作しない場合は、最初に行うべきことは、Fiddlerのようなツールを使って両方のリクエストを傍受し、2つの異なるソフトウェアによって生成された実際のHTTPリクエストの差を見ます。 – ADyson
コメントをいただきありがとうございます。このコードで作業しています! – Jydai