zoukankan      html  css  js  c++  java
  • 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();
    }
    

      

    下面是服务器端接收请求方法:

    加载事件里:
    //对应方法StartPing
                byte[] 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>
                */
    

      

  • 相关阅读:
    用leangoo看板工具实施多团队大规模敏捷开发
    单团队的Scrum敏捷开发-leangoo
    放弃在每日站会上按成员逐个发言
    Leangoo思维导图做OKR目标管理
    好用的思维导图软件(程序员必备)
    好用免费的思维导图工具,多人协作共同编辑
    什么是Scrum燃尽图?
    Scrum中文网-团队需要Scrum Master做这六件事
    项目管理工具Leangoo自定义字段的应用
    实施敏捷开发中,选择看板管理工具的几个要点
  • 原文地址:https://www.cnblogs.com/soundcode/p/2966268.html
Copyright © 2011-2022 走看看