B/S系统间消息交互可能会有webservice、wcf、POST推送、MQ消息、socket,当然MQ消息和socket消息队列另说; 今天主要是写POST推送,主要代码:
/// <summary>
/// POST推送
/// </summary>
/// <param name="postUrl">推送路劲</param>
/// <param name="paramData">参数</param>
/// <param name="dataEncode">Encoding.UTF8</param>
/// <returns></returns>
public static string PostWebRequest(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();
//ret = "Success";
sr.Close();
response.Close();
newStream.Close();
}
catch (Exception ex)
{
ret = "Error:" + ex.Message;
}
return ret;
}
很简单,对吧!!
小伙伴们,注意一下 调用的时候:参数前一定要加上 "reqXml=" reqXml是参数名。