模拟登录实现服务器功能
private static CookieContainer m_Cookie = new CookieContainer(); //记录浏览器session
/// <summary>
/// 删除服务器文件
/// </summary>
/// <param name="MD5">上传文件时返回的MD5</param>
public void deleServerFile(string MD5, string firmId)
{
//由于文件重复上传只会生成一份根文件,做处理如果存在在用文件人员大于1就不删除服务器数据
var modelList = _kfile.GetListByMD5(MD5, firmId);
if (modelList.Count <= 1)//服务器文件只有一分的话就删除掉
{
//模拟登录缓存Cookie
m_Cookie = new CookieContainer();
string loginUrl = Tools.CommonBaseData.KnowLedgebaseLogin;
var arrLogin = loginUrl.Split(',');
string strUrl = arrLogin[0];
string json = "";
json = SendPostHttpRequest(strUrl, "application/x-www-form-urlencoded", "" + arrLogin[1] + "&" + arrLogin[2] + "");
string s1 = json;
//删除服务器文件
strUrl = Tools.CommonBaseData.KnowLedgebaseDeleteFile;
json = SendPostHttpRequest(strUrl, "application/x-www-form-urlencoded", "md5=" + MD5 + "");//&jsession=cfcd208495d565ef66e7dff9f98764da
string s2 = json;
}
}
/// <summary>
/// 发送请求
/// </summary>
/// <param name="url">Url地址</param>
/// <param name="method">方法(post或get)</param>
/// <param name="method">数据类型</param>
/// <param name="requestData">数据</param>
public string SendPostHttpRequest(string url, string contentType, string requestData)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
if (m_Cookie != null)
{
request.CookieContainer = m_Cookie;
}
request.Method = "POST";
byte[] postBytes = null;
request.ContentType = contentType;
postBytes = Encoding.UTF8.GetBytes(requestData);
request.ContentLength = postBytes.Length;
using (Stream outstream = request.GetRequestStream())
{
outstream.Write(postBytes, 0, postBytes.Length);
}
string result = string.Empty;
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
if (m_Cookie == null)
{
response.Cookies = request.CookieContainer.GetCookies(request.RequestUri);
CookieCollection cook;
cook = response.Cookies;
m_Cookie.Add(cook);
}
if (response != null)
{
using (Stream stream = response.GetResponseStream())
{
using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
{
result = reader.ReadToEnd();
}
}
}
}
return result;
}
再三须慎意,第一莫欺心
浙公网安备 33010602011771号