1

servicestackjsonクライアントでRESTPostリクエストをフォーマットするのに問題があります。

生のjson本体を使用してログインサービスに投稿しようとしています

{"Uname":"joe", "Password":"test"}

しかし、postメソッドは実際にはこれを誤って送信しています

{"login":""}

これが私が使用しているコードです。

    JsonServiceClient.HttpWebRequestFilter = filter =>
        {
            filter.Headers.Add(string.Format("X-API-Key: {0}", "test"));
        };

   var client = new JsonServiceClient(url);
   var url = "/login";
   var login = new LoginModel { Uname = uname, Password = pwd };
   return client.Post<UserCredentials>(url, login);

postリクエストで意図した生の値に正しくシリアル化されるようにパラメータオブジェクトをどのように構成する必要がありますか?さらに、LoginModelクラスまたは構造体を作成する必要がないように、ディクショナリまたはより汎用的なオブジェクトを渡すことはできますか?

4

1 に答える 1

1

LoginModelでパブリックプロパティの代わりにパブリックフィールドを使用していたことが問題であることがわかりました。プロパティに変更すると修正されました。

于 2013-03-18T16:52:31.860 に答える