如何在delphi中调用WebService

 我来答
龙氏风采
2017-11-15 · 知道合伙人互联网行家
龙氏风采
知道合伙人互联网行家
采纳数:5849 获赞数:12817
从事互联网运营推广,5年以上互联网运营推广经验,丰富的实战经

向TA提问 私信TA
展开全部

Delphi 调用webservice接口

一、使用向导

1.导入wsdl文件:file--new----other----webservice---WSDLimporter---输入wsdl地址

http//ww.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl

完成之后,即可导入wsdl文件。

注:结尾处的'?wsdl'不能少。

2.在导入的wsdl文件中手动添加部分注册代码:

InvRegistry.RegisterInterface(TypeInfo(qqOnlineWebServiceSoap), 'http://WebXml.com.cn/', 'utf-8');
InvRegistry.RegisterInvokeOptions(TypeInfo(qqOnlineWebServiceSoap),ioDocument);//此处必须手动添加,delphi无法自动生成
InvRegistry.RegisterDefaultSOAPAction(TypeInfo(qqOnlineWebServiceSoap), 'http//WebXml.com.cn/qqCheckOnline');

3.调用代码

var
statusQuery:qqOnlineWebServiceSoap;
qqNumber:string;
statusStr:string;begin
statusQuery:=GetqqOnlineWebServiceSoap;
qqNumber:='516220662';
statusStr:=statusQuery.qqCheckOnline(qqNumber);
ShowMessage(statusStr);end;

4.运行结果:

PS:直接浏览器访问

a) htt://ww.webxml.com.cn/webservices/qqOnlineWebService.asmx

b)输入QQ号进行测试:

c)调用结果:

二、使用HTTPRIO控件

1.在界面上拖放一个HTTPRIO控件

2.设置url属性

http //www webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl

3.调用代码

var
statusStr:string;begin
statusStr:=(HTTPRIO1 as qqOnlineWebServiceSoap).qqCheckOnline('516220662');
ShowMessage(statusStr);end;

4.运行结果

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式