兼容PHP、C#和Java语言的WebServices规范设计

来源 :硅谷 | 被引量 : 0次 | 上传用户:raoxinyan
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要 针对Web Services的实际应用,分析了Web Services的服务特点,根据常见的WEB服务开发语言,选择使用PHP语言进行服务器端开发,设计了服务器端Web Services描述文件的框架,设计了兼容PHP语言、C#语言和Java语言的二维数组传递方案,实现了PHP语言、C#语言和Java语言使用Web Services进行通信。
  关键词 Web Services;WSDL;二维数组
  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2013)18-0067-02
  Web Services是一种服务导向架构的技术,通过标准的Web协议提供服务,目的是保证不同平台的应用服务可以互操作。Web Services服务过程中会由服务器提供一个基于WSDL的机器可读的描述文件以辨识服务器所提供的Web Services。不同的程序设计语言对Web Services支持的差异性,决定了使用不同的语言设计的Web Services服务器和客户端需要遵照统一的相兼容的Web Services设计规范。本文设计实现了兼容PHP语言、C#语言和Java语言的Web Services描述规范和通信规范。
  1 Web Services服务特点
  本文讨论的Web Services采用PHP实现服务器端,供C#和Java客户端调用,Web Services请求/响应模型如图1所示。
  Web Services请求/响应是通过HTTP基于SOAP/XML的通信,客户端向服务端发出Web Services请求,服务端收到请求后,为客户端准备服务数据,然后以Web Services响应的方式返回给客户端。
  2 WSDL文件设计
  WSDL是Web服务描述语言(Web Services Description Language)。WSDL文档是用于描述某个Web Services的XML文档。WSDL文档规定Web Services的位置,以及Web Services提供的操作(或方法),WSDL文档的基本元素如表1所示。
  根据上述分析,客户端对字符串进行反序列化的方法如下:
  步骤1:将二维数组序列化形成的字符串,按utf8方式编码为一个一维字节数组,存储到一维字节数组utf8_array中。
  步骤2:按utf8_array数组的索引顺序,读取utf8_array数组中的元素,当当前读取的utf8_array元素的前一个元素值为“:”,并且还没有从utf8_array数组中读出二维数组的第一维长度时,继续读取utf8_array数组并保存读取到的utf8_array元素值,直到读到utf8_array元素值为“:”时,将保存的值作为二维数组的第一维长度。
  步骤3:继续读取utf8_array数组中的元素,当当前的utf8_array元素的前两个元素值为“a”和“:”,并且还没有从utf8_array数组中读出二维数组的第二维长度时,继续读取utf8_array数组并保存读取到的utf8_array元素值,直到读到utf8_array元素值为“:”时,将保存的值作为二维数组的第二维长度。
  步骤4:继续读取utf8_array数组中的元素,当当前的utf8_array元素的前两个元素值为“s”和“:”时,继续读取utf8_array数组并保存读取到的utf8_array元素值,直到读到utf8_array元素值为“:”时,将保存的值作为临时一维数组中的一个元素值长度,按元素值长度继续读取utf8_array数组并保存相应个数的utf8_array元素值,将保存的值作为临时一维数组的一个元素。
  步骤5:重复步骤4,直到保存的临时一维数组元素的个数等于步骤3得到的二维数组第二维长度时,将该临时一维数组作为二维数组的一个子数组。
  步骤6:重复步骤5,直到保存的二维数组的子数组个数等于步骤2得到的二维数组第一维长度时,结束对utf8_array数组的读取,得到序列化之前的二维数组。
  4 结束语
  Web Services可以将应用程序转换为网络应用程序。通过使用Web Services,应用程序可以向全世界发布信息,或提供某项功能。使用兼容多种程序设计语言的Web Services设计规范,能够更好的发布应用程序,为更多的用户提供服务。
  参考文献
  [1]Wikipedia.Web服务: Web服务[EB/OL].[2013-10-10].http://zh.wikipedia.org/wiki/Web%E6%9C%8D%E5%8A%A1.
  [2]W3School.Web Services 教程: Web Services 教程[EB/OL].[2013-10-10].http://www.w3school.com.cn/webservices/.
  作者简介
  周亮(1981-),男,汉族,安徽砀山人,教育学硕士,兰州石化职业技术学院信息处理与控制工程系讲师。
其他文献
摘 要 在计算机、手机、电话等通讯技术迅速发展的今天,信息安全风险成为当下全社会关注的热点问题。作为信息系统安全开发中的引导和约束主体,网络的应用范围无疑是广大的,从最初的游侠网络发展到今时今日的网络区域性,然而在使用网络带来的方便同时人们也面临着网络带来的信息失窃泄露隐患,因此本文针对网络信息安全进行介绍,对网络安全系统的构建问题加以讨论。  关键词 信息安全;风险评估;预防措施  中图分类号:
摘 要 在解决电力无功补偿的设计方案中,有源电力滤波器(APF)采取了较为理想的无功补偿方法,对变化的无功以及频率、大小均变化的谐波都能够补偿。本文在研究解决电网谐波和无功补偿的智能有源电力滤波器原理的基础上,探究自动化监控技术,通过选用高性能DSP芯片作为控制核心,辅以信号采集子系统及显示等其他外围子系统等,最终完成电网监控与高次谐波和无功功率补偿,并实时地把反应电网系统运行状况的信息参数等显示
摘 要 随着高科技信息技术的不断发展,网络在社会生活中的使用也越来越广泛,人们对于网络安全问题也越来越重视。由于信息技术的快速发展,信息网络不仅仅是计算机网络,还有就是联系全球信息的互联网技术,但是在这几年的报道我们可以了解到,信息网络也存在着一定的缺陷。本文主要介绍信息安全控制原理以及基于信息安全控制原理下的安全网络技术。  关键词 信息安全;控制原理;安全网络;技术  中图分类号:TP309
摘 要 为了解决云计算过程中出现的计算效率低,功能和模块单一的问题,多处理器虚拟化云计算应运而生。云计算应用保护系统可以做到直接控制硬件资源,这不仅能够最大限度的提高系统的工作效率,而且能够提云计算的安全性。  关键词 云计算;多处理器虚拟化;安全研究;对等协作  中图分类号:TP309 文献标识码:A 文章编号:1671-7597(2013)18-0063-02  云计算的出现为我国IT行业的发
摘 要 分析了目前电网规划中存在的问题,提出了江西电网规划综合数据平台的总体架构,并对数据平台的设计技术原则、主要功能模块、系统配置等问题进行了初步探讨。  关键词 电网规划;数据平台;数据整合  中图分类号:TM734 文献标识码:A 文章编号:1671-7597(2013)18-0064-03  目前在开展电网规划工作时,传统的技术手段和工作体系对规划工作来说已表现出很大的不适应:一是对国家电