zoukankan      html  css  js  c++  java
  • ASP.NET Web API 上传文件

    HTML表单:

    <form id="form1" method="post" 
        enctype="multipart/form-data" action="http://localhost:2317/api/uploadFile">
        <div>
            <label for="Name">Name</label>
        </div>
        <div>
            <input name="Name" type="text" />
        </div>
        <div>
            <label for="Price">Price</label>
        </div>
        <div>
            <input name="Price" type="text" />
        </div>
         <div>
            <input name="ImageFile" type="file"  id="me"/>
        </div>
        <div>
            <input type="submit" name="name" value="submit" />
        </div>
    </form>

    API Controller:

         [Route("api/uploadFile")]
            public HttpResponseMessage PostFile()
            {
                HttpResponseMessage result = null;
                var httpRequest = HttpContext.Current.Request;
                if (httpRequest.Files.Count > 0)
                {
                    var docfiles = new List<string>();
                    foreach (string file in httpRequest.Files)
                    {
                        var postedFile = httpRequest.Files[file];
                        var filePath = HttpContext.Current.Server.MapPath("~/" + postedFile.FileName);
                        postedFile.SaveAs(filePath);
    
                        docfiles.Add(filePath);
                    }
                    result = Request.CreateResponse(HttpStatusCode.Created, docfiles);
                }
                else
                {
                    result = Request.CreateResponse(HttpStatusCode.BadRequest);
                }
                return result;
            }

    HttpClient客户端上传:

    //--------上传------------
                HttpClient client = new HttpClient();
                #region
                MultipartFormDataContent form = new MultipartFormDataContent();
                StreamContent fileContent = new StreamContent(File.OpenRead(@"D:uni-all-resourcesCloudShopSourceDevelopmentUni2uni.iShopUni2uni.iShop.WebApiUploadAudioios_2.pcm"));
                fileContent.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
                fileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("form-data");
                fileContent.Headers.ContentDisposition.FileName = "ios_2.pcm";
                form.Add(fileContent);
                #endregion
    
                HttpResponseMessage res = client.PostAsync("http://app.uni2uni.com/api/Audio/UploadAudioResponseMessage", form).Result;
                var uploadModel = res.Content.ReadAsStringAsync().Result;
  • 相关阅读:
    CentOs7-替换下载源
    CentOs7-常用命令
    Django Nginx+uwsgi 安装配置
    Linux操作系统下文件作用
    U盘创建macOS安装盘
    国内开源镜像站点汇总
    gcd常见用法
    mac rvm 升级 ruby 安装cocoapod 指定版本
    confluence 搭建 wiki 并破解
    homebrew 安装 java 指定版本
  • 原文地址:https://www.cnblogs.com/yxlblogs/p/3642809.html
Copyright © 2011-2022 走看看