如何在delphi中调用WebService

本文通过使用Delphi和Web   Services技术开发短信应用程序的实例详细的介绍了如何在Delphi中开发基于Web   Services技术的应用程序。    
  关键字:Delphi;Web   Service;短信应用程序开发  
   
   
  一提起基于Web  Services技术的应用程序开发,一般人首先想到的开发工具是Vs.net,其实作为快速应用程序开发工具(RAD)的老大,Delphi从6.0就开始支持Web   Services的开发和应用了,本文通过使用Delphi   7.0调用新浪发送短信的Web  Service进行短信应用程序开发这一实例详细的介绍在Delphi中如何开发基于Web   Services的应用系统。  
   
  第一步,准备工作,了解新浪短信Web   Service。新浪发送短信的Web  Service地址是http://smsinter.sina.com.cn/ws/smswebservice0101.wsdl,该Web  Service就只有一个方法,即string  sendXml(carrier,userid,password,mobilenumber,content,msgtype)。各个参数全部为string类型,其含义基本如下(可能不正确)。  
   
  Carrier:运营商名称,好像可以随便输,建议输入“Sina”,如果输入其他的值,消息发送的特别慢;  
   
  Userid:您在新浪无线上注册的手机ID,如果您没有在http://sms.sina.com.cn上注册您的手机,你是无法使用本Web   Service发送短信的;  
   
  Password:您在新浪无线上注册手机时所使用的密码;  
   
  Mobilenumber:对方的手机号码;  
   
  Content:发送短消息的内容;  
   
  Msgtype:发送短消息的类型,我估计支持彩信,不过我不知道怎么使用,似乎随便输什么都可以,我使用的是“Text”。  
   
  资费标准请参看新浪无线网站上的相关说明,应该是一条一角钱,不过也或者是一条两角线,具体不太清楚。由于其后台可能使用了消息队列机制,在繁忙的时候,可能会有较长时间的延迟。  
   
  第二步,先建立一个空白的应用程序。运行Delphi  7,打开[File]->[New]->[Application]菜单,Delphi自动生成一个默认的工程。将默认的窗体Form1改为sms,然后将改工程保存为smsdemo.prj  
   
   
  第三步,引入Web  Service。,打开[File]->[New]->[Other]菜单,在弹出的窗口中选择WebServices  Tab页面,然后选择其中的WSDL   importer选项,单击OK按钮弹出WSDL   importer  Wizard窗口,如图2所示。在其上的Location   of   WSDL   File   or   URL  中输入:http://smsinter.sina.com.cn/ws/smswebservice0101.wsdl  (注意,千万不能输错!),单击Next按钮后,再单击Finishi按钮,完成浪发送短信Web  Service的引入。此时工程文件中会增加一个名字为smswebservice0101.pas的文件,这是Delphi自动生成的Web  Service引入申明文件,不要手工修改他。  
   
  第四步,调用Web   Service的短信发送接口。在sms窗体中,依次增加四个TEdit控件,一个TButton控件,一个TMemo控件和五个TLabel控件。  
  在smsfrm单元的uses语句中包含smswebservice0101,以便改窗体中能够访问新浪发送短信的Web   Service接口。  
   
  在发送按钮OnClick事件中写入以下代码:  
   
  procedure   Tsms.Button1Click(Sender:   TObject);  
   
  begin  
   
  Memo1.Text   :=   GetSMSWebServiceSoapPort.sendXml(Edit1.Text,  
   
  Edit2.Text,   Edit3.Text,   Edit4.Text,   Edit5.Text,'Text');  
   
  end;  
   
  注意:Edit1、Edit2、Edit3、Edit4、Edit5分别对应界面上的运营商、用户名、密码、对方号码、消息内容;Memo1对应界面上的反馈。  
   
  第五步,使用Web  Service的短信发送接口进行短信发送。编译、运行smsdemo.prj,在用户名中输入您在新浪无线上注册的手机ID、密码中输入您在新浪无线上的密码,然后再输入对方的手机号码和消息内容,单击发送按钮,稍候片刻,在反馈信息框中将会得到该Web  Service的反馈信息,如果一切正常,系统会提示您短信发送成功。  
   
  小结  
   
  从上面的例子我们可以看到,只要理解了Web   Services的概念,在Delphi的帮助下,开发基于Web  Services的应用程序将不是一件很困难的事情。Web  Services最适合用于开发跨平台和跨网络进行通信(因为使用http协议为防火墙所允许)的程序,可以跨越异质架构,联系客户、供应商、企业伙伴以及企业内部之信息系统,是电子商务B2B、企业信息等集成的最佳解决方案。各个公司只要把商务逻辑“暴露”出来,成为Web  Service,就可以让任何指定的合作伙伴调用这些商务逻辑,而不管他们的系统在什么平台上运行,使用什么开发工具。Web  Services是目前很热门也是正在迅速发展着的一项技术。

你可能感兴趣的:(Web,webservice,service,手机,Delphi,程序开发)