后端Post WEBAPI 传递文件

在后端通过模拟post请求传递文件。

声明了一个model实体

public class model
{

public string name{get;set;}

public string file{get;set;}

}

通过后端Post请求:

FileStream fs = new FileStream(this.file.Text, FileMode.Open, FileAccess.Read);
byte[] buffur = new byte[fs.Length];
fs.Read(buffur, 0, (int)fs.Length);
fs.Dispose();
string reslt = string.Empty;
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create("http://localhost/BB_WEBAPI/api/XbrlVerifivation/CheckXbrlByALL");
webRequest.Method = "Post";
string a= Convert.ToBase64String(buffur);
webRequest.ContentType = "application/json";
byte[] data = Encoding.Default.GetBytes(string.Format("{{\"filename\":\"{0}\",\"ckeckfile\":\"{1}\"}}", filename, a));
webRequest.ContentLength = data.Length;
Stream stream = webRequest.GetRequestStream();
stream.Write(data, 0, data.Length);
stream.Close();
using (StreamReader sr = new StreamReader(webRequest.GetResponse().GetResponseStream()))
{
     reslt = sr.ReadToEnd();
}

接口代码:

这里其实是将文件流先接收,然后通过base64形式进行传递,接收到后,将重新转回byte[]

发布了22 篇原创文章 · 获赞 1 · 访问量 6908

猜你喜欢

转载自blog.csdn.net/soulman1234/article/details/103686323