在上一篇文章中,我们已经学习了如何在ASP.NET Core中使用HttpClient从Web API获取数据。此外,我们还学习了如何使用GetAsync方法和HttpRequestMessage类发送GET请求。在本文中,我们将学习如何在ASP.NET Core中使用HttpClient发送POST、PUT和DELETE请求,并使用PostAsync、PutAsync、DeleteAsync和HttpRequestMessage类创建请求。
在ASP.NET Core中使用HttpClient发送POST请求
如果读过上一篇文章,就知道在CompanyEmployees.Client中有一个HttpClientCrudService 类。这个类已经包含了两个方法,我们将在本文中对它进行扩展。
既然配置已经准备好了,我们可以添加一个新方法来发送POST请求到Web API:
private async Task CreateCompany() { var companyForCreation = new CompanyForCreationDto { Name = "Eagle IT Ltd.", Country = "USA", Address = "Eagle IT Street 289" }; var company = JsonSerializer.Serialize(companyForCreation); var requestContent = new StringContent(company, Encoding.UTF8, "application/json"); var response = await _httpClient.PostAsync("companies", requestContent); response.EnsureSuccessStatusCode(); var content = await response.Content.ReadAsStringAsync(); var createdCompany = JsonSerializer.Deserialize<CompanyDto>(content, _options); }