/*------------------------------------------------------------------------- * 功能描述:HttpUtils * 作者:xulisong * 创建时间: 2019/7/29 10:16:56 * 版本号:v1.0 * -------------------------------------------------------------------------*/ using System; using System.Diagnostics; using System.IO; using System.Net.Http; namespace MBIRevitBase.Tools { /// /// HttpUtils信息处理 /// public class HttpUtils { private static HttpClient m_Client; /// /// 创建HttpClient,单例对象生成 /// /// public static HttpClient CreateClient() { if (m_Client == null) { m_Client = new HttpClient(); } return m_Client; } public const string WebKitFormBoundary = "----WebKitFormBoundary"; public static BResult PostFormDataFile(string url,Stream stream) { using (HttpClient client = CreateClient()) { string boundary = string.Format("{0}{1}", WebKitFormBoundary, DateTime.Now.Ticks.ToString("x")); MultipartFormDataContent content = new MultipartFormDataContent(boundary); #region Stream请求 var streamContent = new StreamContent(stream); //"file.zip"必须有,它的格式可能影响到内部的一些配置 content.Add(streamContent, "file","file.zip"); #endregion var result = client.PostAsync(url, content).Result; try { if (result.IsSuccessStatusCode) { string rslt = result.Content.ReadAsStringAsync().Result; return new BResult(true,rslt); } else { return result.ToString(); } } finally { client.Dispose(); } } return string.Empty; } } }