加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php 如何利用 soap调用.Net的WebService asmx文件

发布时间:2020-05-25 03:20:12 所属栏目:PHP 来源:互联网
导读:最近,帮一个同行测试用.net写的WebService接口,C#调用通过,现在需要测试一下php版本对它的调用,经过各种探索,相关的PHP调用webservice的过程如下:1.打开php相关扩展: 找到配置文件php.ini 文件, 打开以下扩展extension=php_soap.dllextension=php_cur

最近,帮一个同行测试用.net写的WebService接口,C#调用通过,现在需要测试一下php版本对它的调用,经过各种探索,

相关的PHP调用webservice的过程如下:

1.打开php相关扩展:

找到配置文件php.ini 文件, 打开以下扩展

2.php代码如下:

<div class="cnblogs_code">
<span style="color: #000000;"><?<span style="color: #000000;">php<span style="color: #008080;">header<span style="color: #000000;">(<span style="color: #000000;">"<span style="color: #000000;">content-type:text/html;charset=utf-8<span style="color: #000000;">"<span style="color: #000000;">);<span style="color: #800080;">$client<span style="color: #000000;"><span style="color: #000000;">=<span style="color: #000000;"><span style="color: #0000FF;">new<span style="color: #000000;">SoapClient(<span style="color: #000000;">"<span style="color: #000000;">http://192.168.3.178:8080/ChkWelePsw.asmx?WSDL<span style="color: #000000;">"<span style="color: #000000;">);<span style="color: #008000;">//<span style="color: #008000;">本行测试不可行$client=newSoapClient("http://192.168.3.178:8080/chkwelepsw.asmx?WSDL/ChkWele?username=test3&amp;psw=123");//参数这样传递先包装一下<span style="color: #008000;"><span style="color: #800080;">$param<span style="color: #000000;"><span style="color: #000000;">=<span style="color: #000000;"><span style="color: #0000FF;">array<span style="color: #000000;">(<span style="color: #000000;">'<span style="color: #000000;">username<span style="color: #000000;">'<span style="color: #000000;">=><span style="color: #000000;">'<span style="color: #000000;">test3<span style="color: #000000;">'<span style="color: #000000;">,<span style="color: #000000;">'<span style="color: #000000;">psw<span style="color: #000000;">'<span style="color: #000000;">=><span style="color: #000000;">'<span style="color: #000000;">123<span style="color: #000000;">'<span style="color: #000000;">);<span style="color: #008000;">//<span style="color: #008000;">调用必须用soapCall<span style="color: #008000;"><span style="color: #800080;">$p<span style="color: #000000;"><span style="color: #000000;">=<span style="color: #000000;"><span style="color: #800080;">$client<span style="color: #000000;">-><span style="color: #000000;">soapCall(<span style="color: #000000;">'<span style="color: #000000;">ChkWele<span style="color: #000000;">'<span style="color: #000000;">,<span style="color: #0000FF;">array<span style="color: #000000;">(<span style="color: #000000;">'<span style="color: #000000;">parameters<span style="color: #000000;">'<span style="color: #000000;"><span style="color: #000000;">=><span style="color: #000000;"><span style="color: #800080;">$param<span style="color: #000000;">));<span style="color: #008080;">print_r<span style="color: #000000;">(<span style="color: #800080;">$p<span style="color: #000000;">-><span style="color: #000000;">ChkWeleResult);<span style="color: #008000;">//<span style="color: #008000;">这里先输出一下变量$p,看看是什么类型。<span style="color: #008000;"><span style="color: #000000;">?>

注意,在php调用某个方法后,其soap对象,就会自动产生一个Result方法,以方便显示调用结果,如上面的 被调用端的WebService的 “”方法 ,

调用端就有相应的“”方法。

<div style="font-weight: bold;">.NET部分 webservice要注意的地方

<div class="cnblogs_code">
<span style="color: #008000;">/<span style="color: #008000;"><system.web>在这个节点中加入如下内容<addname="HttpSoap"/><addname="HttpPost"/><addname="HttpGet"/><addname="Documentation"/><span style="color: #008000;">*/<span style="color: #000000;">[WebMethod(Description<span style="color: #000000;">=<span style="color: #000000;"><span style="color: #800000;">"<span style="color: #800000;">This......<span style="color: #800000;">"<span style="color: #000000;">,EnableSession<span style="color: #000000;">=<span style="color: #000000;"><span style="color: #0000FF;">false<span style="color: #000000;">)]<span style="color: #0000FF;">public<span style="color: #000000;"><span style="color: #0000FF;">string<span style="color: #000000;">ChkWele(<span style="color: #0000FF;">string<span style="color: #000000;">username,<span style="color: #0000FF;">string<span style="color: #000000;">psw){<span style="color: #0000FF;">string<span style="color: #000000;">ret<span style="color: #000000;">=<span style="color: #000000;"><span style="color: #800000;">""<span style="color: #000000;">;<span style="color: #0000FF;">return<span style="color: #000000;">ret;}

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读