public class HttpServer { /// <summary> /// 读取远程文件的内容 /// </summary> /// <param name="path"></param> /// <returns></returns> public string ReadFromFile(string serverFilePath) { if (string.IsNullOrEmpty(serverFilePath)) return ""; string ret = ""; HttpWebRequest req = null; HttpWebResponse resp = null; try { req = (HttpWebRequest)HttpWebRequest.Create(serverFilePath); req.Method = "GET"; req.KeepAlive = false; resp = req.GetResponse() as HttpWebResponse; using (Stream stream = resp.GetResponseStream()) { using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { ret = reader.ReadToEnd(); } } } catch (Exception ex) { throw ex; } finally { if (req != null) req.Abort(); if (resp != null) resp.Close(); } return ret; } /// <summary> /// 读取远程文件的内容(异步) /// </summary> /// <param name="path"></param> /// <returns></returns> public async Task<string> ReadFromFileAsync(string serverFilePath) { if (string.IsNullOrEmpty(serverFilePath)) return ""; string ret = ""; HttpWebRequest req = null; HttpWebResponse resp = null; try { req = (HttpWebRequest)HttpWebRequest.Create(serverFilePath); req.Method = "GET"; req.KeepAlive = false; resp = req.GetResponse() as HttpWebResponse; using (Stream stream = resp.GetResponseStream()) { using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { ret = await reader.ReadToEndAsync(); } } } catch (Exception ex) { throw ex; } finally { if (req != null) req.Abort(); if (resp != null) resp.Close(); } return ret; } }