新建一个 webapi 项目,并实现上传文件的接口功能

avatar
作者
猴君
阅读量:6

在创建一个新的 WebAPI 项目之前,确保已经安装了 .NET Core SDK。下面是一个创建并实现上传文件接口功能的示例。

  1. 打开终端或命令提示符,导航到想要创建项目的目录。

  2. 执行以下命令来创建一个新的 WebAPI 项目:

dotnet new webapi -n MyFileUploadApi 

这将创建一个名为 MyFileUploadApi 的新的 WebAPI 项目。

  1. 导航到项目目录:
cd MyFileUploadApi 
  1. 打开 Controllers 文件夹,并编辑 WeatherForecastController.cs 文件。

  2. 删除默认生成的代码,替换为以下代码:

using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using System; using System.IO; using System.Threading.Tasks; namespace MyFileUploadApi.Controllers { [ApiController] [Route("[controller]")] public class FileUploadController : ControllerBase { [HttpPost] public async Task<IActionResult> Post(IFormFile file) { try { if (file == null || file.Length == 0) return BadRequest("No file uploaded."); // 文件存储路径 var filePath = Path.Combine(Directory.GetCurrentDirectory(), "Uploads", file.FileName); // 创建文件夹 Directory.CreateDirectory(Path.GetDirectoryName(filePath)); // 保存文件 using (var stream = new FileStream(filePath, FileMode.Create)) { await file.CopyToAsync(stream); } return Ok("File uploaded successfully."); } catch (Exception ex) { return StatusCode(500, $"Internal server error: {ex}"); } } } } 

这个控制器类中包含一个 Post 方法,用于处理上传文件的请求。它将接收一个 IFormFile 类型的参数,该参数将包含上传的文件。

  1. 保存文件并退出编辑器。

  2. 将项目运行起来:

dotnet run 

这将启动一个本地的开发服务器,监听 https://localhost:5001http://localhost:5000

  1. 使用任何 HTTP 请求工具(如 Postman 或 cURL)发送一个 POST 请求到 https://localhost:5001/FileUpload(或 http://localhost:5000/FileUpload),并将文件作为请求体的一部分上传。

注意:确保 Content-Type 设置为 multipart/form-data

在 Postman 中,你可以选择 Body 选项卡,在 form-data 类型下添加一个 Keyfile 的字段,然后选择一个文件作为 Value

  1. 检查控制台输出或返回的响应,在成功上传文件后会返回一个 200 OK 响应。

这样,你就成功创建了一个具有上传文件接口功能的 WebAPI 项目。你可以根据自己的需要进行扩展和定制。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!