【发布时间】:2018-03-08 14:09:09
【问题描述】:
我从我的控制器接收一个文件
public async Task<IActionResult> ScanFile(IFormFile request)
以及如何在 RestSharp 中传递它,如下面的 AddParameter 所示。 我尝试设置自己的边界并序列化 IFormFile 没有任何结果。
var client = new RestClient("https://api_url/requests");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization", "bearer API_TOKEN");
request.AddHeader("accept", "application/json");
request.AddHeader("content-type", "multipart/form-data; boundary=---011000010111000001101001");
request.AddParameter("multipart/form-data; boundary=---011000010111000001101001", "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"eicar.com\"\r\nContent-Type: text/plain\r\n\r\nX5O!P%@AP[4\\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*\r\n-----011000010111000001101001--", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
【问题讨论】:
-
如果有帮助,你检查过这篇文章吗? stackoverflow.com/questions/22799392/…
-
您需要将
IFormFile流读入字节数组。最简单的方法是将其复制到MemoryStream,然后在其上使用ToArray。然后,在您的请求中发送字节数组。
标签: c# asp.net-core multipartform-data restsharp