工作中可能会使用api请求接口,然后从接口中读取附件,今天做个记录
实际上很简单,下边是个例子
1.从指定接口下载文件
var url = 请求的地址;
var jsonBody = 你的参数.ToJson();
//拼接一个请求的content
var content = new StringContent(jsonBody, System.Text.Encoding.UTF8, "application/json");
//创建request请求
var request = new HttpRequestMessage(HttpMethod.Post, url);
//将参数赋值
request.Content = content;
//获取文件服务器的文件
var response = await _httpClient.SendAsync(request);
//判断状态
if (response.IsSuccessStatusCode)
{
//读取接口中返回的流
var stream = await response.Content.ReadAsStreamAsync();
}
else
{
//抛出请求失败的异常
}
2.从指定接口上传文件
List<IFormFile> files = 你需要上传的附件;
var listFileParam = new List<FileParameter>();
foreach (var item in files)
{
listFileParam.Add(new FileParameter()
{
FileName = item.FileName,
FieldName = "file",
Stream = item.OpenReadStream()
});
}
//将请求转发到指定文件服务器
var str = await _httpClient.FileRequestAsync(uploadApi, "post", null, listFileParam);