服务端:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.IO; namespace AA.Web.Controllers { public class UploadController : Controller { // // GET: /Upload/ public ActionResult Up() { var fname = Request.Form["fname"]; if (Request.Files.Count > 0) { var file = Request.Files[0]; var filename=Guid.NewGuid().ToString("N") + Path.GetExtension(file.FileName); file.SaveAs(Server.MapPath("/" + filename)); } return Content(fname); } } }
客户端:
public static String uploadFile(String filename){ try { // "http://192.168.1.7:7086/account/getUsers";// String httpUrl = "http://192.168.1.7:7086/upload/up"; // HttpGet连接对象 HttpPost httpRequest = new HttpPost(httpUrl); // 取得HttpClient对象 HttpClient httpClient = new DefaultHttpClient(); MultipartEntity mEntity=new MultipartEntity(); ContentBody cbFile=new FileBody(new File(filename)); mEntity.addPart("file1", cbFile); mEntity.addPart("fname", new StringBody("这是一个几吧文件","text/plan", Charset.forName("utf-8"))); httpRequest.setEntity(mEntity); // 请求HttpClient,取得HttpResponse HttpResponse httpResponse = httpClient.execute(httpRequest,httpContext); // 请求成功 if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { // 取得返回的字符串 String strResult = EntityUtils.toString(httpResponse.getEntity()); httpClient.getConnectionManager().shutdown(); return strResult; } throw new RuntimeException("网络请求执行错误!"); } catch (Exception e) { throw new RuntimeException(e); } }
需要添加httpmime-4.1.1.jar文件