Asp.net MVC 和web api 的action 在獲取從前臺傳入的數據是有很大不同 前臺使用ajax的方式向後臺發起post的請求 Content-Type:application/json 使用以下json對象 在mvc中可以使用這兩種格式的json均能獲取到的user的username ...
Asp.net MVC 和web api 的action 在獲取從前臺傳入的數據是有很大不同
前臺使用ajax的方式向後臺發起post的請求 Content-Type:application/json
使用以下json對象
{ "user": { "Username":"xxx", "Password":"xxxx" } }
{ "Username":"xxx", "Password":"xxx" }
public string Login(User user) { try { Sign.Login(user); } catch (LoginException e) { return e.Message; } //保存登陸狀態 FormsAuthentication.SetAuthCookie(user.Username, true); return "success"; }
在mvc中可以使用這兩種格式的json均能獲取到的user的username,password,
而在webapi中使用第一種獲取到user的username,password為null,第二種可以獲取到user的username,password。
在mvc中
public ActionResult Test(int a, int b, int c) { return View(); }
這個aciton可以傳一個這樣的json
{ "a":1, "b":2, "c":3 }
而在webapi中使用這種參數,會提示找不到配置的action,或許webapi在除了路由中定義的id(使用url參數傳入)之外,只能定義引用類型的參數,並通過
{ "Username":"xxx", "Password":"xxx" }
這種格式的json傳入才能接收。