HttpWebRequest post提交XMl参数请求,
生活随笔
收集整理的這篇文章主要介紹了
HttpWebRequest post提交XMl参数请求,
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
public string StartPing(string pingURL)//改為一個傳參數URL
{
StreamReader sr = null;
StringBuilder sb = new StringBuilder();
string strOutput = string.Empty;
string strXML = string.Empty;
try
{
//HttpUtility.HtmlEncode
strXML = BuildXML();
int len = strXML.Length;
ASCIIEncoding ascii = new ASCIIEncoding();
HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(pingURL);
webReq.Method = "POST";
webReq.Timeout = 3000;//超時為3秒
webReq.ContentType = "text/xml";
//string contenttype = "application/x-www-form-urlencoded";//更網站該方法支持的類型要一致
webReq.Credentials = CredentialCache.DefaultNetworkCredentials;
webReq.ContentLength = len;Stream streamRequest = webReq.GetRequestStream();
byte[] bt = ascii.GetBytes(strXML);
streamRequest.Write(bt, 0, len);
HttpWebResponse webRes = (HttpWebResponse)webReq.GetResponse();sr = new StreamReader(webRes.GetResponseStream(), Encoding.ASCII);
string ret = sr.ReadToEnd();
sb.AppendLine("\n");
sb.AppendLine(ret);if (ret.IndexOf("<boolean>0</boolean>") >= 0)
{
sb.AppendLine("\n\t 服務提交成功!");
}
else if (ret.IndexOf("<boolean>1</boolean>") >= 0)
{
sb.AppendLine("\n\t 服務提交失敗!");
}
if (sr != null)
{
sr.Close();
}
}
catch (Exception ex)
{
sb.AppendLine(ex.Message);
sb.AppendLine(ex.StackTrace);
}
finally
{
strOutput = sb.ToString();
if (sr != null)
{
sr.Dispose();
}
}
return strOutput;
}private string BuildXML()
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("<?xml version=\"1.0\"?>");
sb.Append("<params>");
sb.AppendFormat("<title>{0}", "公告標題");
sb.Append("</title>");
sb.AppendFormat("<content>{0}", "公告內容,base64加密的");
sb.Append("</content>");sb.Append("<verify=be10c510b5f4f082dbd4268820cde895>");sb.Append("</params>");
return sb.ToString();
}
下面是服務器端接收請求方法:
加載事件里: //對應方法StartPingbyte[] byts = new byte[Request.InputStream.Length];Request.InputStream.Read(byts, 0, byts.Length);string req = System.Text.Encoding.Default.GetString(byts);req = Server.UrlDecode(req);//下面是接收到的內容//<?xml version="1.0"?><params><title>????</title><content>?????base64???</content><verify=be10c510b5f4f082dbd4268820cde895></params>*/總結
以上是生活随笔為你收集整理的HttpWebRequest post提交XMl参数请求,的全部內容,希望文章能夠幫你解決所遇到的問題。