我正在使用以下Azure函数上载文本文件。当文本文件保存到磁盘时,标头是输出的一部分,可能是因为请求正文已保存到文件。如何仅保存文件内容而不包含标题?
[FunctionName("Function1")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "post")]HttpRequest req)
{
var stream = string.Empty;
byte[] bytes= {};
if (req.Body != null)
{
MemoryStream ms = new MemoryStream();
await req.Body.CopyToAsync(ms);
bytes = ms.ToArray();
stream = bytes.Length.ToString();
using (FileStream file = new FileStream("file.txt", FileMode.Create, FileAccess.Write))
{
ms.WriteTo(file);
}
}
return new OkResult();
}
保存的文本文件包含这样的标题:
----------------------------900677394929774652406440
Content-Disposition: form-data; name="file"; filename="testing.txt"
Content-Type: text/plain
这里是邮递员设置
尝试使用
new StreamReader(req.Body).ReadToEndAsync()
通过这种方式,您可以接收可以写到文本文件的字符串。