5

Patch メソッドを使用したテーブル コントローラーを含む Azure モバイル サービスを開発しています。

public Task<User> PatchUser(string id, Delta<User> patch)
{
    return UpdateAsync(id, patch);
}

モバイル サービスをローカルでホストしており、Patch がどのように機能するかをテストしたいと考えています。私はそれを行うために Postman を使用していますが、次の応答で HTTP エラー 400 を取得し続けます。

{ "message": "HTTP リクエストに有効なエンティティ ボディが含まれていませんでした。エンティティ ボディと関連する Content-Type ヘッダーがリクエストに含まれていることを確認してください。" }

これらは、HTTP PATCH リクエストに添付するヘッダーです。 ここに画像の説明を入力

これはリクエスト本文です: ここに画像の説明を入力

このWeb サイトで、POST リクエストには次のような本文を含める必要があることを読みました: [ { "op": "replace", "path": "/email", "value": "new.email@example.org" } ]

以下のスクリーンショットで確認できるリクエスト本文を提供しても、同じレスポンスが得られます。

ここに画像の説明を入力

テーブルコントローラーが基づいているクラス User は次のとおりです。

public class User : EntityData
{
    public string Gender { get; set; }
}

Postman 経由でパッチ リクエストを適切に送信するにはどうすればよいですか?

4

1 に答える 1

2

2 番目のリクエストを使用する必要がありますが、大文字のGの代わりに小文字のgを使用して 'gender' プロパティを送信する必要があります。これはモデルでこのプロパティを定義する方法です。JSON シリアライザー/デシリアライザーはデフォルトで大文字と小文字を区別します。

于 2016-03-22T05:11:26.683 に答える