![](/img/trans.png)
[英]Upload files Asp.NET MVC 4 - Web API - Http Put verb/method
[英]asp.net web API HTTP PUT method
我有一些資源 - UserProfile
public UserProfile
{
public string Email{get;set;}
public string Password{get;set;}
}
我想分別更改電子郵件和密碼(用戶只能同時更改一個)。 我有 web api 控制器,例如 /api/user/123 以 RESTful 風格處理請求。 遵循 RESTful 風格,我應該有一個更新資源的方法PUT ,但我有兩個任務更新相同的資源 api/user/123。 我需要向 PUT 請求正文添加一些功能,例如 {email:'test@domain.com', changeType:'email '} 或 {password:'12345678', changeType:'password' } 以在我的 PUT 方法中編寫一些功能? 或者還有其他方法可以以 RESTful 風格更新我的資源?
[HttpPut]
public HttpResponseMessage PutProduct(Product p)
{
Product pro = _products.Find(pr => pr.Id == p.Id);
if (pro == null)
return new HttpResponseMessage(HttpStatusCode.NotFound);
pro.Id = p.Id;
pro.Name = p.Name;
pro.Description = p.Description;
return new HttpResponseMessage(HttpStatusCode.OK);
}
您有兩個選項可以分別更新電子郵件和密碼。
A) 不要使用 PUT,使用 POST
B) 創建用於更新單個元素的子資源,例如
PUT /api/user/123/email
和
PUT /api/user/123/password
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.