【asp精品源码栏目提醒】:文章导读:在新的一年中,各位网友都进入紧张的学习或是工作阶段。
网学会员整理了asp精品源码-c#_操作webservice(经典入门教程+MSDN) - 其它资料的相关内容供大家参考,祝大家在新的一年里工作和学习顺利!
Web Service 基本概念Web Service 也叫 XML Web Service WebService 是一种可以接收从 Internet 或者 Intranet 上的其它系统中传递过来的请求,轻量级的独立的通讯技术。
是:通过 SOAP 在 Web 上提供的软件(服务),使用 WSDL 文件进行(说明),并通过(UDDI)进行注册。
XML:Extensible Markup Language扩展型可标记语言。
面向短期的临时数据处理、面向万维网络,是 Soap 的基础。
Soap:Simple Object Access Protocol简单对象存取协议。
XML Web Service 是的通信协议。
当用户通过 UDDI 找到你的 WSDL 描述文档后,他通过可以 SOAP调用你建立的 Web 服务中的一个或多个操作。
SOAP 是 XML 文档形式的调用方法的规范,它可以支持不同的底层接口,像 HTTPS或者 SMTP。
WSDL:Web Services Description Language WSDL 文件是一个 XML 文档,用于说明一组 SOAP 消息以及如何交换这些消息。
大多数情况下由软件自动生成和使用。
UDDI Universal Description Discovery and Integration 是一个主要针对Web 服务供应商和使用者的新项目。
在用户能够调用 Web 服务之前,必须确定这个服务内包含哪些商务方法,找到被调用的接口定义,还要在服务端来编制软件,UDDI 是一种根据描述文档来引导系统查找相应服务的机制。
UDDI 利用SOAP 消息机制(标准的 XML/HTTP)来发布,编辑,浏览以及查找注册信息。
它采用 XML 格式来封装各种不同类型的数据,并且发送到注册中心或者由注册中心来返回需要的数据。
概念补充:http soap 关系http:是一个客户端和服务器端请求和应答的标准(TCP)。
http 协议其目的是为了提供一种发布和接收 htttp 页面的方法一 http 协议的客户端与服务器的交互:由 HTTP 客户端发起一个请求,建立一个到服务器指定端口(默认是 80 端口)的 TCP 连接。
HTTP 服务器则在那个端口监听客户端发送过来的请求。
一旦收到请求,服务器(向客户端)发回一个状态行,比如HTTP/1.1 200 OK,和(响应的)消息,消息的消息体可能是请求的文件、错误消息、或者其它一些信息。
soap 协议:它描述了一种在分散或分布式的环境中如何交换信息的轻量级协议。
soap 在http 协议的基础上,一个基于 XML 的协议。
不同:都是底层的通信协议,请求包的格式不同而已,soap 包是 XML 格式http 纯文本格式。
SOAP 是个通信协议,SOAP 在 HTTP 协议的基础上,关系: 把编写成 XML 的 REQUEST参数 放在 HTTP BODY 上提交个 WEB SERVICE 服务器SERVLET,ASP 什么的处理完成后,结果也写成 XML 作为 RESPONSE 送回用户端, 为了使用户端和 WEBSERVICE 可以相互对应,可以使用 WSDL 作为这种通信方式的描述文件,利用 WSDL工具可以自动生成 WS 和用户端的框架文件,SOAP 具备把复杂对象序列化捆绑到 XML里去的能力。
Membrane SOAP Monitor,这个 soap 监听工具。
这是德国的一家在线 web 服务注册公司predic8 做的开源 soap 监听工具,简单好用。
windows 下最新的版本为 1.1.2 版,下载地址:http://mirror.predic8.com/membrane/monitor/win86/membrane-monitor-win86-1.1.2.zip 还有 linux 下的版本:http://download.predic8.com/membrane/monitor/linux-x86/membrane-monitor-linux-x86-0.9.4.tgz 源码:http://download.predic8.com/membrane/monitor/src/membrane-monitor-src-0.9.4.zip 具体使用: 1 运行 exe 文件linux 下可能是 jar 文件; 2 点击菜单项 membrane-add rule ,进入后默认选项即可,点 next; 3 设置端口号不产生冲突的任意端口,点 next; 4 设置主机及端口部署服务的地址及服务器的端口,完成。
当调用网上发布的服务时,如检查 qq 是否在线的服务:http://www.webxml.com.cn/webservices/qqOnlineWebService.asmxwsdl 可将 4中的 host 设为远端服务的网址, www.webxml.com.cn, 如 端口设为服务的端口,上面就是 80 端口。
当我们监听 soap 消息时,只要访问了 web 服务,即可在 membrane 的界面显示发送及接受的 soap 消息概念补充:View CodeXML Web Service 的特点View Code二、Web Service 开发.net 平台内建了对 Web Service 的支持,包括 Web Service 的构建和使用。
与其它开发平台不同,使用.net 平台,你不需要其他的工具或者 SDK 就可以完成Web Service 的开发了。
.net Framework 本身就全面支持 Web Service,包括服务器端的请求处理器和对客户端发送和接受 SOAP 消息的支持。
下来我们就一步一步的用 Microsoft Visual Studio .net 20058(后面简称 VS.Net 2008)创建和使用一个简单的 Web Service。
2.1、用创建一个最简单的 Web Service首先,打开 VS2005打开文件-新建-网站,选择ASP.NET Web 服务查看 Service.cs 代码,你会发现 VS.Net 2005 已经为 Web Service 文件建立了缺省的框架。
原始代码为:默认工程里面已经有一个 Hello World 的方法了,namespace WebService1 /// /// Service1 的摘要说明 /// WebServiceNamespace http://tempuri.org/ //用于向 XML Web services 添加附加信息,如描述其功能的字符串。
//对于将要发布和执行的 XML Web services 来说,WebServiceAttribute 不是必需的。
//可以使用 WebServiceAttribute 为 XML Web services 指定不受公共语言运行库标识 //XML Web services 在成为公共之前,应该更改其默认的 XML 命名空间。
//每个 XML Web services 都需要唯一的 XML 命名空间来标识它,以便客户端应用程序 //但是已发布的 XML Web services 应该使用更具永久性的命名空间。
例如,可以将公司 //虽然很多 XML Web services 的 XML 命名空间与 URL 很相似,但是,它们无需指向 Wservices,可以使用 Namespace 属性更改默认的 XML 命名空间。
WebServiceBindingConformsTo WsiProfiles.BasicProfile1_1//ConformsTo 获 //声明定义一个或多个 XML Web services 方法的绑定。
无法继承此类。
//按 Web 服务描述语言 WSDL 的定义,绑定类似于一个接口,原因是它定义一组具体 //每个 XML Web services 方法都是特定绑定中的一项操作。
XML Web services 方法是 //或者是在应用于实现 XML Web services 的类的 WebServiceBindingAttribute 中指定 //XML Web services 可以通过将多个 WebServiceBindingAttribute 属性应用于 XML W //将一个或多个 WebServiceAttribute 属性应用到 XML Web services 之后,可以将 S//以指示由特定的 XML Web services 方法实现的绑定操作。
//设置 SoapDocumentMethodAttribute 或 SoapRpcMethodAttribute 的 Binding 属性以指定 XM System.ComponentModel.ToolboxItemfalse//提供工具箱项的基实现。
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
// System.Web.Script.Services.ScriptService public class Service1 : System.Web.Services.WebService////表示此网站项目实现的一个 Web 服务,如同将此网站引用添加到项目时以 Visual Studio 生成 WebMethod//向使用 ASP.NET 创建的 XML Web services 中的某个方法添加此//初始化 WebMethodAttribute 类的新实例。
public string HelloWor
上一篇:
YEEPAY 易宝支付平台 在线支付业务通用网关接口
下一篇:
非常好用的串口跟踪程序c++语言实验已通过