Asp.net-Web-Api
client.DeleteAsync - 在正文中包含對象
我有一個 ASP.NET MVC 5 網站 - 在 C# 客戶端程式碼中,我正在使用 HttpClient.PutAsJsonAsync(path, myObject) 很好地呼叫 Json API(該 API 也是我在 Web API 中創建的)。
client.BaseAddress = new Uri("http://mydomain"); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var response = await client.PutAsJsonAsync("api/something", myObj);我想對刪除動詞做同樣的事情。但是
client.DeleteAsync不允許對像在正文中傳遞。(我想在 URI 中與要刪除的項目的 Id 一起記錄刪除原因)。有沒有辦法做到這一點?
DeleteAsync由於更高級別不支持主體,因此您必須在方便性方面放棄一點,但是“很長的路”仍然很簡單:var request = new HttpRequestMessage { Method = HttpMethod.Delete, RequestUri = new Uri("http://mydomain/api/something"), Content = new StringContent(JsonConvert.SerializeObject(myObj), Encoding.UTF8, "application/json") }; var response = await client.SendAsync(request);