最近在弄一些第三方的平臺,經常調用第三方的接口實現(xiàn)某些特定的功能
在實現(xiàn)的同時基本上都需要本地的數(shù)據經過服務器在Request到第三方的服務器中處理,再返回相應的數(shù)據結構體:json/xml
以下是我總結的一個小方法,請農友們笑納:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | public static string PostWebReq( string PostUrl, string ParamData, Encoding DataEncode) { string ret = string .Empty; try { byte [] byteArray = DataEncode.GetBytes(ParamData); HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create( new Uri(PostUrl)); webReq.Method = "POST" ; webReq.ContentType = "application/x-www-form-urlencoded" ; webReq.ContentLength = byteArray.Length; Stream newStream = webReq.GetRequestStream(); newStream.Write(byteArray, 0, byteArray.Length); newStream.Close(); HttpWebResponse response = (HttpWebResponse)webReq.GetResponse(); StreamReader sr = new StreamReader(response.GetResponseStream(), DataEncode); ret = sr.ReadToEnd(); sr.Close(); response.Close(); newStream.Close(); } catch (WebException ex) { Log.WriteLog(LogFile.Error, ex.Message); } finally { Log.WriteLog(LogFile.Info, ret); } return ret; } |