【问题标题】:Post man retuning null file, even file is uploaded邮递员返回空文件,甚至文件已上传
【发布时间】:2019-09-29 14:16:40
【问题描述】:

strong text我尝试使用 Asp core webApi 和使用 IFormFile 上传文件。当我尝试使用邮递员对其进行测试时,它总是显示空文件,即使文件上传正确(我认为它是正确的)。

我在邮递员上尝试了许多不同的文件。 删除某些情况下建议的 ApiController 属性

这是我上传文件的代码:

    [HttpPost]
    public async Task<IActionResult> UploadFile([FromForm]IFormFile 
                                                 fileData)
    {

        try
        {
            if (fileData == null) return BadRequest("null file");
            if (fileData.Length == 0)
            {
                return BadRequest("empty file");
            }

            var folderName = Path.Combine("resources", "iles");
            var pathToSave =  Path.Combine(Directory.GetCurrentDirectory(), folderName);



            var fileName = ContentDispositionHeaderValue.Parse(fileData.ContentDisposition).FileName.Trim('"');

            var fullpath = Path.Combine(pathToSave, fileName);
            using (var stream = new FileStream(fullpath, 
                   FileMode.Create))
            {
                await fileData.CopyToAsync(stream);
            }

            return Ok();
        }
        catch (Exception)
        {
            return StatusCode(500, "internal server error");
        }



    }

【问题讨论】:

    标签: c# asp.net-web-api postman


    【解决方案1】:

    我团队中的一些人遇到了同样的问题。发布文件时,您需要确保key 字段的名称与控制器操作中的参数名称匹配。在您的情况下,这意味着 key 字段应该是 fileData

    【讨论】:

      猜你喜欢
      • 2017-02-15
      • 2018-10-22
      • 2021-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多