Postman Post請求上傳文件
1、選擇post請求方式,輸入請求地址前端
2、填寫Headersweb
Key:Content-Type ;Value:multipart/form-data數據庫
以下圖後端
3、填寫bodyapi
選擇form-data,key選擇file類型後value會出現按鈕,點擊按鈕選擇文件,最後點擊Send發送便可。服務器
返回結果,如上圖所示。post
4、後端:C# webapi 方法測試
[AllowAnonymous] //測試時容許任何人訪問,測試後要刪除 [HttpPost] //指定post請求才能訪問 [Route("UploadFile")] //方法別名,路由根據別名找到方法。 public ApiResult UploadFile() { var result = new ApiResult(); var httpRequest = HttpContext.Current.Request; //與MVC控制器不一樣,這裏要加 Current。 if (httpRequest.Files.Count > 0) { string url = null; foreach (string file in httpRequest.Files) { var postedFile = httpRequest.Files[file]; Guid name = Guid.NewGuid(); string ext = postedFile.FileName.Split('.')[postedFile.FileName.Split('.').Length - 1]; //須要的時候能夠進行文件格式控制 //if (!(ext.ToLower().Contains("jpg") || ext.ToLower().Contains("jpeg") || ext.ToLower().Contains("png") || ext.ToLower().Contains("gif"))) //{ // result.msg = "請上傳jpg,png,gif,jpeg格式的圖片"; // break; //} string fileName = name.ToString() + "." + ext; var serverPath = "~/UploadFiles/StandardFiles"; var dirPath = HttpContext.Current.Server.MapPath(serverPath); var filePath = Path.Combine(dirPath, fileName); if (!Directory.Exists(dirPath)) { Directory.CreateDirectory(dirPath); } postedFile.SaveAs(filePath); url = Url.Content(serverPath + "/" + fileName); } result.data = new { url = url //返回一個url到前端,前端結合表單操做保存到數據庫。列表頁根據這個url呈現給用戶就能夠下載文件。 }; result.success = true; } return result; }
建議進行數據格式控制,任何文件格式都容許上傳是有風險的,對服務器和未來下載的人的電腦。ui
參考文獻:https://blog.csdn.net/maowendi/article/details/80537304url