public static string SendDX(string Mobile, string Content, string SendTime) { try { string url = CommonHelp.GetConfig("DXURL") + "&Mobile=" + Mobile + "&Content=" + Content; WebClient WC = new WebClient(); WC.Headers.Add("Content-Type", "application/x-www-form-urlencoded"); int p = url.IndexOf("?"); string sData = url.Substring(p + 1); url = url.Substring(0, p); byte[] postData = Encoding.GetEncoding("gb2312").GetBytes(sData); byte[] responseData = WC.UploadData(url, "POST", postData); string returnData = Encoding.GetEncoding("gb2312").GetString(responseData); return returnData; } catch (Exception Ex) { return Ex.Message; } }
//获取文件服务器 public string GetFileServerUrl(string qycode) { string strFileAPIRegUrl = CommonHelp.GetConfig("FileAPIReg").ToString() + qycode + "/document/"; return(strFileAPIRegUrl); }
/// <summary> /// /// </summary> /// <param name="uploadUrl"></param> /// <param name="fileToUpload"></param> /// <param name="poststr"></param> /// <returns></returns> public static string PostFile(JH_Auth_QY QYinfo, string fileToUpload, string poststr = "") { string result = ""; string uploadUrl = QYinfo.FileServerUrl.TrimEnd('/') + "/document/fileupload/" + QYinfo.QYCode; try { string boundary = "----------" + DateTime.Now.Ticks.ToString("x"); HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create(uploadUrl); webrequest.ContentType = "multipart/form-data; boundary=" + boundary; webrequest.Method = "POST"; StringBuilder sb = new StringBuilder(); if (poststr != "") { foreach (string c in poststr.Split('&')) { string[] item = c.Split('='); if (item.Length != 2) { break; } string name = item[0]; string value = item[1]; sb.Append("–" + boundary); sb.Append("\r\n"); sb.Append("Content-Disposition: form-data; name=\"" + name + "\""); sb.Append("\r\n\r\n"); sb.Append(value); sb.Append("\r\n"); } } sb.Append("--"); sb.Append(boundary); sb.Append("\r\n"); sb.Append("Content-Disposition: form-data; name=\"file"); //sb.Append(fileFormName); sb.Append("\"; filename=\""); sb.Append(Path.GetFileName(fileToUpload)); sb.Append("\""); sb.Append("\r\n"); sb.Append("Content-Type: application/octet-stream"); //sb.Append(contenttype); sb.Append("\r\n"); sb.Append("\r\n"); string postHeader = sb.ToString(); byte[] postHeaderBytes = Encoding.UTF8.GetBytes(postHeader); byte[] boundaryBytes = Encoding.ASCII.GetBytes("\r\n--" + boundary + "\r\n"); FileStream fileStream = new FileStream(fileToUpload, FileMode.Open, FileAccess.Read); long length = postHeaderBytes.Length + fileStream.Length + boundaryBytes.Length; webrequest.ContentLength = length; Stream requestStream = webrequest.GetRequestStream(); requestStream.Write(postHeaderBytes, 0, postHeaderBytes.Length); byte[] buffer = new Byte[(int)fileStream.Length]; int bytesRead = 0; while ((bytesRead = fileStream.Read(buffer, 0, buffer.Length)) != 0) { requestStream.Write(buffer, 0, bytesRead); } requestStream.Write(boundaryBytes, 0, boundaryBytes.Length); fileStream.Close(); WebResponse responce = webrequest.GetResponse(); requestStream.Close(); using (Stream s = responce.GetResponseStream()) { using (StreamReader sr = new StreamReader(s)) { result = sr.ReadToEnd(); } } } catch (Exception ex) { CommonHelp.WriteLOG(uploadUrl + "|||" + fileToUpload + "|||" + ex.ToString()); } return(result); }