我试图通过发送 url 中的参数来调用 HttpDelete Restful Web API 方法。调用成功。
示例
string url = path + "deletemethodName?Id=" + Convert.ToInt32(idpamameter) + "&name=" + nameParameter;
using (HttpClient client = new HttpClient())
{
using (HttpResponseMessage response = client.DeleteAsync(url).Result)
{
if (response.IsSuccessStatusCode)
{
return Json(response.Content.ReadAsStringAsync().Result);
}
}
}
有没有一种方法-在调用 HttpDelete 方法时,就像我们使用在正文中发送模型数据来调用 POST 方法一样,并在 API 方法中使用 [FromBody] 来访问模型数据,而不是将其发送到网址?
由于我的 HttpDelete 方法中有超过 5 个参数要附加到 URL 中 - 我希望发送模型数据。
提前致谢。
最佳答案
更高级别的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);
关于c# - Web API HttpDelete - 如何调用删除 API 方法并在 [FromBody] 中发送模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63609660/