Home > Backend Development > PHP Tutorial > 容易的soap出错.

容易的soap出错.

WBOY
Release: 2016-06-13 13:01:36
Original
966 people have browsed it

简单的soap出错...
一直报错:
锘?
Fatal error: Uncaught SoapFault exception: [Client] looks like we got no XML document in E:\xampp\htdocs\photowall\registeraction.php:22 Stack trace: #0 E:\xampp\htdocs\photowall\registeraction.php(22): SoapClient->__call('test', Array) #1 E:\xampp\htdocs\photowall\registeraction.php(22): SoapClient->test() #2 {main} thrown in E:\xampp\htdocs\photowall\registeraction.php on line 22

上面那个乱码有点诡异....因为它是在我没有输出任何东西的情况下出现的....
不知道是神马意思....
求问各位大神到底哪里出错了...


下面是代码:

一个类,在usrHelper.php中:

<?php<br />
class usrHelper<br />
{<br />
	public function test()<br />
	{<br />
		return "this is a test";<br />
	}<br />
}<br />
?>
Copy after login


server.php是:
<?php<br />
<br />
require_once 'usrHelper.php';<br />
<br />
$server = new SoapServer(null, <br />
		array('uri' => "usr_service"));<br />
$server->setClass('usrHelper');<br />
$server->handle();<br />
?>
Copy after login


调用服务的时候:
<br />
$client = new SoapClient(null, array(<br />
      'location' => "http://127.0.0.1/photowall/server.php",<br />
      'uri'      => "usr_service",<br />
      'trace'    => 1 ));<br />
//$client->addUsr($username,$password);<br />
$ans = $client -> test();<br />
echo $ans;
Copy after login

------解决方案--------------------
你没有wsdl 或者 asmx文件吗? 错误好像是希望你能提供一个xml格式的文件
------解决方案--------------------
经测试,你贴出的代码没有任何问题。可以得到结果 this is a test

观察你贴出的错误信息(这可不是乱码噢),错误出现在 registeraction.php 第22行相关的代码中,
而你贴出的代码要少的多。

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template