c# 调用 PHP 编写的Web Services
最近遇到一个项目,需要使用C# 调用PHP编写的Webservices 发送短信。如下是实现方案,仅供参考
- 使用 PHP 编写WebService ,可以使用nusoap 插件或Php自带的 soap 组件,我使用的Php 自带的soap组件
//server端 serverSoap.php $soap = new SoapServer(null,array(‘uri‘=>"http://192.168.1.123/")); $soap->addFunction(‘Add_func‘); //Register the function $soap->addFunction(SOAP_FUNCTIONS_ALL); $soap->handle(); function Add_func($i, $j){ $res = $i + $j; return $res; }
- PHP 客户端调用
//client端 clientSoap.php try { $client = new SoapClient(null, array(‘location‘ =>"http://192.168.1.123/test/serverSoap.php",‘uri‘ => "http://127.0.0.1/") ); echo $client->Add_func(100,99); } catch (SoapFault $fault){ echo "Error: ",$fault->faultcode,", string: ",$fault->faultstring; }
- 使用工具zendstudio 将服务端的webservice 生成WSDL 文件并发布。
- C# 调用此webservice 步骤
- 使用 WSDL.exe 生成代理类:
wsdl /language:c# /n:wsdlLib /out:D:/ServiceProxy.cs http://192.168.1.123/test/serverSoap.php?wsdl
- 将生成的文件 ServiceProxy.cs放入项目文件app_code中
- 直接调用此代理类中的方法Add_func(x,y);
- 使用 WSDL.exe 生成代理类:
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。