httpresponsemessage 使用PostAsync接收返回的文件
时间: 2024-03-07 17:49:41 浏览: 22
您可以使用 `HttpClient` 类的 `PostAsync` 方法来发送一个 HTTP POST 请求,并接收服务器返回的文件。以下是示例代码:
```csharp
using System.Net.Http;
using System.IO;
// 创建 HttpClient
var httpClient = new HttpClient();
// 创建包含文件数据的 HttpContent 对象
var fileContent = new StreamContent(File.OpenRead(filePath));
// 创建包含文件数据的 MultipartFormDataContent 对象
var formData = new MultipartFormDataContent();
formData.Add(fileContent, "file", Path.GetFileName(filePath));
// 发送 POST 请求并接收响应
var response = await httpClient.PostAsync(url, formData);
// 确保响应成功
response.EnsureSuccessStatusCode();
// 读取响应内容
var fileBytes = await response.Content.ReadAsByteArrayAsync();
```
在上面的代码中,`filePath` 是本地文件的路径,`url` 是接收文件的服务器端 API 地址。该代码将文件数据包装成 `MultipartFormDataContent` 对象,并使用 `PostAsync` 方法发送 HTTP POST 请求。最后,通过读取响应内容的方式获取服务器返回的文件字节数组。