zoukankan      html  css  js  c++  java
  • Postman Post请求上传文件

    Postman Post请求上传文件
    一、选择post请求方式,输入请求地址

    二、填写Headers

    Key:Content-Type ;Value:multipart/form-data

    如下图

     

    三、填写body

    选择form-data,key选择file类型后value会出现按钮,点击按钮选择文件,最后点击Send发送即可。

     

    返回结果,如上图所示。

    四、后端: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;
            }                        

     建议进行数据格式控制,任何文件格式都允许上传是有风险的,对服务器和将来下载的人的电脑。

    参考文献:https://blog.csdn.net/maowendi/article/details/80537304

  • 相关阅读:
    ms sql server缓存清除与内存释放
    Linux学习23-Xftp上传文件显示乱码问题
    jmeter压测学习1-window环境准备与案例
    Linux学习22-文件上传与下载(rz,sz)
    httprunner学习16-locust性能测试
    httprunner学习15-运行用例命令行参数详解
    httprunner学习14-完整的项目结构设计
    httprunner学习13-环境变量.env
    httprunner学习12-hook 机制实现setup和teardown
    httprunner学习11-辅助函数debugtalk.py
  • 原文地址:https://www.cnblogs.com/hao-1234-1234/p/9947294.html
Copyright © 2011-2022 走看看