使用HttpClient实现multipart/form-data请求
Blazor wasm可以在前端进行文件选择并将文件数据传递到后台的ASP.NET Core Web API进行处理。在此过程中,我们需要使用HttpClient实现multipart/form-data请求,将文件数据一同发送到后台API。下面是代码示例:
public async Task UploadFileAsync(IFileListEntry file)
{
if (file != null)
{
var content = new MultipartFormDataContent();
content.Add(new StreamContent(file.Data), "\"file\"", $"\"{file.Name}\"");
var response = await _httpClient.PostAsync("/api/upload", content);
if (response.IsSuccessStatusCode)
{
// 文件上传成功
}
else
{
// 文件上传失败
}
}
}
在这个示例代码中,我们使用MultipartFormDataContent类创建了一个包含文件数据的multipart/form-data请求体,并使用HttpClient的PostAsync方法将请求发送到API的“/api/upload”路由。如果上传成功,可以在response.IsSuccessStatusCode == true时执行相应的逻辑;如果上传失败,则可以在response.IsSuccessStatusCode == false时执行相应的逻辑。