zoukankan      html  css  js  c++  java
  • C# HttpClient以multipart/form-data形式 提交文件和其它参数

      调用文件接口,需要一个上传文件和一个Region参数,参考调用实例

     public async Task<WebApiResult> UploadFile(UploadFileModel info, IList<IFormFile> files)
            {
                try
                {
                    var postContent = new MultipartFormDataContent();
                    string boundary = string.Format("--{0}", DateTime.Now.Ticks.ToString("x"));
                    postContent.Headers.Add("ContentType", $"multipart/form-data, boundary={boundary}");
                    var requestUri = "/api/File/UploadFiles";
                    if (files.Any())
                    {
                        var stream = files[0].OpenReadStream();
                        //files为文件key, files[0].FileName 为文件名称
                        postContent.Add(new StreamContent(stream, (int)stream.Length), "files", files[0].FileName);
                        //Region为请求文件接口需要的参数,根据调用接口参数而定
                        postContent.Add(new StringContent(info.Region), "Region");
    
                    }
                    var response = await _httpclient.PostAsync(requestUri, postContent);
                    if (response.IsSuccessStatusCode)
                    {
                        var responseStr = await response.Content.ReadAsStringAsync();
                        var responseObj = JsonConvert.DeserializeObject<WebApiResult>(responseStr);
                        return responseObj;
                    }
                    //WebApiResult为自定义反会值
                    return new WebApiResult(ApiResultCode.Fail, "保存失败");
                }
                catch (Exception ex)
                {
                    throw new Exception("保存file异常");
                }
    
            }

  • 相关阅读:
    一些点子的梳理
    网络安全解决方案
    流量劫持技术
    运营商DNS系统安全解决方案
    安卓工作室 设置每次启动 选择项目,不直接打开项目
    多臂机测试, AB测试
    vue 入门
    web开发 入门
    C# .NET 使用第三方类库DotNetZip解压/压缩Zip文件
    Linq 101 工具和源码
  • 原文地址:https://www.cnblogs.com/personblog/p/12030987.html
Copyright © 2011-2022 走看看