2015-05-26 58 views
0

我有POST方法的Web API POST方法frombody爲空

[HttpPost] 
public HttpResponseMessage Post(MemberViewModel model) 

另一篇文章中的方法相同的控制器。我加入登錄方法

[Route("api/members/login")] 
[HttpPost] 
public HttpResponseMessage Login([FromBody]LoginViewModel model) 
{} 

public class LoginViewModel 
{ 
    public string UserName { get; set; } 
    public string Password { get; set; } 
} 

默認POST方法工作正常,但 路由當我打電話登錄郵政法模型(LoginViewModel總是空)的屬性。我用小提琴手做測試。

的Fiddler

POST http://localhost:49595/api/members/login/ HTTP/1.1

的User-Agent:提琴手

的Content-Type:應用/ JSON

主機:本地主機:49595

內容 - 長度:79

請求體 { 「用戶名」:[email protected], 「密碼」:「393f83x393」 }

這是工作的罰款與一個參數

[Route("api/members/login")] 
[HttpPost] 
public HttpResponseMessage Login([FromBody]string userName) 
{} 

請諮詢有什麼不好型號

謝謝。

回答

0

你的提琴手顯示了該行:

請求體{「用戶名」:[email protected],「密碼」:「393f83x393」}

這不是有效的JSON。電子郵件帳戶應該用單引號或雙引號括起來。

+0

嗨JotaBe,謝謝你的回答。其實,我忘了在我的問題中加上用戶名的雙引號。我認爲菲德勒有一些問題。 –