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

调用实例:

  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. }

【后端C#】后台通过http post 调用 webservice 的方法的更多相关文章

  1. 原生java调用webservice的方法,不用生成客户端代码

    原生java调用webservice的方法,不用生成客户端代码 2015年10月29日 16:46:59 阅读数:1455 <span style="font-family: Aria ...

  2. Java调用webservice接口方法

                             java调用webservice接口   webservice的 发布一般都是使用WSDL(web service descriptive langu ...

  3. C# 通过Get、Post、Soap调用WebService的方法

    实现代码来源于网络,我只是作了一些修改! using System; using System.Web; using System.Xml; using System.Collections; usi ...

  4. 调用webservice客户端方法 runtime modeler error: Wrapper class ××× is not found. Have you run APT to generate them?

    用wsimport生成webservice的客户端以后,调用客户端生成方法时总是出现 runtime modeler error: Wrapper class stardand.nrcms.nckin ...

  5. C# 调用WebService的方法

    很少用C#动态的去调用Web Service,一般都是通过添加引用的方式,这样的话是自动成了代理,那么动态代理调用就是我们通过代码去调用这个WSDL,然后自己去生成客户端代理.更多的内容可以看下面的两 ...

  6. 【转】C# 调用WebService的方法

    很少用C#动态的去调用Web Service,一般都是通过添加引用的方式,这样的话是自动成了代理,那么动态代理调用就是我们通过代码去调用这个WSDL,然后自己去生成客户端代理.更多的内容可以看下面的两 ...

  7. Java调用webservice接口方法(SOAP message、xfire、axis)

    webservice的 发布一般都是使用WSDL(web service descriptive language)文件的样式来发布的,在WSDL文件里面,包含这个webservice暴露在外面可供使 ...

  8. 动态调用WebService 通用方法Moss 中 传统开发中都可用。

    WebService是啥大家都知道了,这里不做过多的解释.通常我们使用WebService的做法基本都是在我们的项目中添加Web引用的方式,首先找到WebService的地址,然后定义命名空间,这样会 ...

  9. 关于使用axis调用webservice接口方法

    1.概述: 我们有时候会调用webserviec接口,我们向接口发送请求参数,从接口接收返回值. 2.形式: package client; import org.apache.axis.client ...

随机推荐

  1. 【Luogu P1967】货车运输

    Luogu P1967 题目大意:给定一张图和q个询问,询问x节点和y节点的路径之间最小边权最大可以是多少. 可以发现对于一条边\(E(x,y)\),如果x到y有另一条路径且最小边权大于\(E(x,y ...

  2. Redis系列(三):Redis集群的水平扩展与伸缩

    一.Redis集群的水平扩展 Redis3.0版本以后,有了集群的功能,提供了比之前版本的哨兵模式更高的性能与可用性,但是集群的水平扩展却比较麻烦,接下来介绍下Redis高可用集群如何做水平扩展,在原 ...

  3. docker容器访问宿主机的IP——以rocketmq管理工具为例

    在宿主机(MacOS系统)上运行了原生的RocketMQ服务,为了方便管理,需要以Docker方式运行RocketMQ的管理工具——rocketmq-console (项目地址:https://git ...

  4. 【Java并发系列】----JUC之Lock

    显式锁 Lock 在Java 5.0之前,协调共享对象的访问时可以使用的机制只有synchronized和volatile.Java 5.0后增加了一些新的机制,但并不是一种替代内置锁的方法,而是当内 ...

  5. 使用 sroll-snap-type 优化滚动

    根据 CSS Scroll Snap Module Level 1 规范,CSS 新增了一批能够控制滚动的属性,让滚动能够在仅仅通过 CSS 的控制下,得到许多原本需要 JS 脚本介入才能实现的美好交 ...

  6. LNMP 源码发布Thinksaas论坛

    第一步:搭建LNMP架构 LNMP架构 注意:搭建php服务时,初始化 ./configure --prefix=/usr/local/php5 \ --enable-fpm \ --enable-d ...

  7. 请问1^x+2^x+3^x+\cdots +n^x的算式是什么呢?

    目录 总结 请问\(1^x+2^x+3^x+\cdots +n^x\)的算式是什么呢? 一.求和式\(\sum\limits_{i=1}^n{i}\)的算式 如何证明求和简式\(\sum_{i=1}^ ...

  8. Spring Boot 自动装配(一)

    目录 目录 前言 1.起源 2.Spring 模式注解 2.1.装配方式 2.2.派生性 3.Spring @Enable 模块驱动 3.1.Spring框架中@Enable实现方式 3.2.自定义@ ...

  9. error Couldn't find a package.json file in

    error Couldn't find a package.json file in解决方法:首先初始化,再安装相应的文件 (1). npm init -f //强迫初始化文件 (2). npm in ...

  10. 【LiteOS】STM32F103-LiteOS移植教程(详细篇)【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...