1

「PUT」メソッドを使用して JSON データを Web サービスに送信していますが、422 処理不能エンティティエラーが発生しています。
JSON でサーバーの応答を実際に確認するにはどうすればよいですか? 例外を深く掘り下げましたが、まだjson応答が見つかりません。

元:

JSON リクエスト:

{
  customer:
  {
    name: "asd",
    address: "test"
  }
}

すべてが問題なければ、JSON データが返ってくるはずです。

元:

{
  customer:
  {
    id: 1,
    name: "asd",
    address: "test"
  }
}
4

3 に答える 3

3

WebExpection をキャッチし、そこから Response を取得して、正しいエラー メッセージを抽出できます。

コード :

catch (WebException ex)
{
    using (var sr = new StreamReader(ex.Response.GetResponseStream()))
    {
       var data = sr.ReadToEnd();                    
       throw new ApplicationException(data);
    }                
}
于 2014-03-28T00:23:09.013 に答える
1

Fiddlerを使用してこのRESTサービスを手動でテストできます。
422 HTTPエラーの説明:要求は整形式でしたが、セマンティックエラーのためにフォローできませんでした
したがって、たとえば、送信するJSONデータが正しい形式であるかどうかを確認してください。

于 2012-06-11T16:43:41.707 に答える
0

あなたの質問に答えるには:構文エラーを指定してjsonで詳細な回答を得ることができません。エラーを見つけるには、手動の試行錯誤プロセスになります。

user3470814 が述べたように、この種のエラーをキャッチし、アプリケーションで何かを行う必要があります。

lucask が述べたように、Fiddler は、リクエストで送信された正確な文字列を確認するのに役立ちます。

于 2016-01-14T15:41:38.483 に答える