调用webservice的第二种方式的错误读取是怎样的
PHP code<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> require('./soap_lib/nusoap.php'); require('./include.php'); ini_set("soap.wsdl_cache_enabled", "1");$s = new SoapClient(url_site."/WebServices/Service1.asmx?wsdl"); $s->soap_defencoding = 'UTF-8'; $s->decode_utf8 = false;// $result=$s->call('UserInfo',array('user'=> urldecode($_GET['username']))); $result=$s->UserInfo(array('user'=> urldecode($_GET['username']))); //var_dump($result);exit;// if (!$err=$s->getError()) { // $list=explode(";",$result["UserInfoResult"]);// array_pop($list);// } else { $list=explode(";",$result->UserInfoResult); array_pop($list); ?>
ログイン後にコピー
注释掉的部分是之前的调用ws的方式,换了主机之后居然不支持了,,接着找谷歌,发现第二种方式,但是没指明怎样抓取错误信息
导致的问题是如果
$result=$s->UserInfo(array('user'=> urldecode($_GET['username'])));
执行出来没有数据
提示
Fatal error: Uncaught SoapFault exception: [soap:Server] System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 ---> System.IndexOutOfRangeException: 在位置 0 处没有任何行。 在 System.Data.RBTree`1.GetNodeByIndex(Int32 userIndex) 在 System.Data.RBTree`1.get_Item(Int32 index) 在 System.Data.DataRowCollection.get_Item(Int32 index) 在 WebService1.Service1.UserInfo(String user) 位置
questions:
if (!$err=$s->getError()) 这个方法失效了 该怎么写
------解决方案--------------------什么时候把头像换了
------解决方案-------------------- WebService1.Service1.UserInfo(String user)
这个是.NET。
user 是STRIN格式。