zoukankan      html  css  js  c++  java
  • 【后端C#】后台通过http post 调用 webservice 的方法

    定义http post 调用webservice的某个方法

     1 /// <summary>    
     2     /// http Post调用  WebService  
     3     /// </summary>    
     4     public static XmlDocument Test1_QueryPostWebService(String URL,
     5         String MethodName, Hashtable Pars)
     6     {
     7         
     8  
     9  HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(URL + "/" + MethodName);
    10         request.Method = "POST";
    11         request.ContentType = "application/x-www-form-urlencoded";
    12         request.Credentials = CredentialCache.DefaultCredentials;
    13         request.Timeout = 10000;
    14  
    15         #region 参数拼接成字符串,最后编码
    16         StringBuilder sb = new StringBuilder();
    17         foreach (string k in Pars.Keys)
    18         {
    19             if (sb.Length > 0)
    20             {
    21                 sb.Append("&");
    22             }
    23             sb.Append(
    24                 HttpUtility.UrlEncode(k) + "="
    25                 + HttpUtility.UrlEncode(Pars[k].ToString())
    26                 );
    27  
    28         }
    29         byte[] data = Encoding.UTF8.GetBytes(sb.ToString());
    30         #endregion
    31  
    32         #region  把编码后的参数写入请求流中
    33         request.ContentLength = data.Length;
    34         Stream writer = request.GetRequestStream();
    35         writer.Write(data, 0, data.Length);
    36         writer.Close();
    37         #endregion
    38  
    39         #region 读取结果,创建XmlDocument对象,对象加载结果
    40         var response = request.GetResponse();
    41         StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
    42         String retXml = sr.ReadToEnd();
    43         sr.Close();
    44         XmlDocument doc = new XmlDocument();
    45         doc.LoadXml(retXml);
    46         #endregion 
    47  
    48   return doc;
    49  
    50  
    51  
    52     }
    53  

    调用实例:

     1 protected void Page_Load(object sender, EventArgs e)
     2         {
     3             Hashtable pars = new Hashtable();
     4             String Url = "http://localhost:63596/WebService1.asmx";
     5             pars["aa"] = "HelenZhou";
     6             XmlDocument doc = WebSvcCaller.
     7                 Test1_QueryPostWebService(Url,
     8                 "MyHelloWorld",
     9                 pars);
    10             Response.Write(doc.OuterXml); 
    11         }
  • 相关阅读:
    原生JS(类、原型、构造函数)
    原生JS(cookie操作的封装)
    原生JS(cookie)
    原生JS(异步请求)
    原生js(1)
    iframe框架嵌套页面(全屏,页面上下左右有空白,去双滚动条)
    Zabbix4.0监控Nginx1.16
    Nginx1.16访问限制
    django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.
    Zabbix4.0解决中文乱码
  • 原文地址:https://www.cnblogs.com/-SSY-/p/12039919.html
Copyright © 2011-2022 走看看