C# HttpClient Post 引數同時上傳檔案 上傳圖片 呼叫介面
阿新 • • 發佈:2019-01-11
// 呼叫介面上傳檔案 using (var client = new HttpClient()) { using (var multipartFormDataContent = new MultipartFormDataContent()) { var values = new[] { new KeyValuePair<string, string>("a", "3"), new KeyValuePair<string, string>("c", "2"), new KeyValuePair<string, string>("d", "2") //other values }; foreach (var keyValuePair in values) { multipartFormDataContent.Add(new StringContent(keyValuePair.Value), String.Format("\"{0}\"", keyValuePair.Key)); } multipartFormDataContent.Add(new ByteArrayContent(System.IO.File.ReadAllBytes(@"D:\test.jpg")), "\"pic\"", "\"test.jpg\""); var requestUri = "http://localhost:8080"; var html = client.PostAsync(requestUri, multipartFormDataContent).Result.Content.ReadAsStringAsync().Result; } }
API 介面,接收請求引數 和上傳的檔案
public string UploadHeadImg() { var ts = HttpContext.Current.Request["d"]; HttpPostedFile file = System.Web.HttpContext.Current.Request.Files[0]; // 副檔名 string fileExtension = Path.GetExtension(file.FileName).ToLower(); Stream sr = file.InputStream;//頭像檔案流 Bitmap bitmap = (Bitmap)Bitmap.FromStream(sr); bitmap.Save(“c:/img/1.jpg”, System.Drawing.Imaging.ImageFormat.Jpeg); return "success"; }
來源:https://blog.csdn.net/luofeng0710/article/details/84202008