using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Web;
using System.Web.Mvc;
using System.IO;
using System.Text;
namespace UpLoadFile_Web.Controllers
{
public class HomeController : Controller
{
[HttpPost]
public void uploadfile()
{
try
{
if (Request.Files.Count > 0)
{
string[] dateTime = DateTime.Now.ToString("yyyy-MM-dd").Split('-');
string folder = $"{System.Configuration.ConfigurationManager.AppSettings["fileurl"].ToString()}\\{dateTime[0]}\\{dateTime[1]}\\{dateTime[2]}";
if (!Directory.Exists(folder))
{
Directory.CreateDirectory(folder);
}
Request.Files[0].SaveAs(folder+"\\"+Request.Files[0].FileName);
Response.Write("上传成功");
}
else
{
Response.Write("检测不到文件");
}
}
catch (Exception ex)
{
Response.Write($"上传失败,{ex.Message}");
}
}
public void Index()
{
Response.Write("文件上传网站");
}
public void uploadtest(string file,string url)
{
file = @"E:\demo.zip";
url = "http://172.0.0.1:8094/home/uploadfile";
using (FileStream fs = new FileStream(file, FileMode.Open, FileAccess.Read))
{
string boundary = $"{DateTime.Now.Ticks.ToString("x")}";
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.Method = "POST";
webRequest.ContentType = $"multipart/form-data; boundary=----{boundary}";
long length = 0;
string content = $"------{boundary}\r\nContent-Disposition: form-data; name=\"file\"; filename=\"{Path.GetFileName(file)}\"\r\nContent-Type: application/octet-stream\r\n\r\n";
byte[] bytes1 = Encoding.ASCII.GetBytes(content);
length = bytes1.Length;
byte[] bytes2 = new byte[fs.Length];
fs.Read(bytes2, 0, (int)fs.Length);
length += fs.Length;
content = $"\r\n------{boundary}--";
byte[] bytes3 = Encoding.ASCII.GetBytes(content);
length += bytes3.Length;
webRequest.ContentLength = length;
Stream stream = webRequest.GetRequestStream();
stream.Write(bytes1, 0, bytes1.Length);
stream.Write(bytes2, 0, (int)fs.Length);
stream.Write(bytes3, 0, bytes3.Length);
stream = webRequest.GetResponse().GetResponseStream();
StreamReader streamReader = new StreamReader(stream);
Response.Write(streamReader.ReadToEnd());
}
}
}
}
http协议上传文件
最新推荐文章于 2024-05-15 23:33:20 发布