nusoap使用者请进 Use Dom to parse the xml string. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 真没办法,写了一个webservice但是结果不对,请明白的帮忙看看server端:<?phprequire('nusoap.php');//$debug=1;$soap = new soap_server();$soap->configureWSDL('lncncApInvoke', 'usn:lncncApInvoke');$soap->wsdl->schemaTargetNamespace = 'usn:lncncApInvoke';$soap->wsdl->addComplexType( 'ServiceArg', 'complexType', 'struct', 'sequence', '', array( 'argName' => array('name'=>'argName', 'type'=>'xsd:string'), 'argValue' => array('name'=>'argValue', 'type'=>'xsd:string') ) );$soap->wsdl->addComplexType( 'CreateCompanyRequest', 'complexType', 'struct', 'sequence', '', array( 'apID' => array('name'=>'apID', 'type'=>'xsd:string'), 'timeStamp' => array('name'=>'timeStamp', 'type'=>'xsd:string'), 'orderNo' => array('name'=>'orderNo','type'=>'xsd:string'), 'companyID' => array('name'=>'companyID','type'=>'xsd:string'), 'companyName' => array('name'=>'companyName','type'=>'xsd:string'), 'productID' => array('name'=>'productID','type'=>'xsd:string'), 'userID' => array('name'=>'userID','type'=>'xsd:string'), 'login' => array('name'=>'login','type'=>'xsd:string'), 'password' => array('name'=>'password','type'=>'xsd:string'), 'serviceArgs' => array('name'=>'serviceArgs','type'=>'xsd:ServiceArg') ) );$soap->wsdl->addComplexType( 'CreateCompanyResponse', 'complexType', 'struct', 'sequence', '', array( 'apID' => array('name'=>'apID', 'type'=>'xsd:string'), 'timeStamp' => array('name'=>'timeStamp', 'type'=>'xsd:string'), 'returnCode' => array('name'=>'returnCode','type'=>'xsd:int'), 'errorDescription' => array('name'=>'errorDescription','type'=>'xsd:string') ) );$soap->register('CreateCompany', // method name array('CreateCompanyRequest' => 'tns:CreateCompanyRequest'), // input parameters array('CreateCompanyResponse' => 'tns:CreateCompanyResponse') , // output parameters 'usn:lncncApInvoke', // namespace 'usn:lncncApInvoke#CreateCompany', // soapaction 'rpc', // style 'encoded', // use '验证用户名及随机数' // documentation);$soap->service($HTTP_RAW_POST_DATA);function CreateCompany($reqinfo){print_r($reqinfo);$arr=array("apID"=>$reqinfo['apID'],'timeStamp' =>$reqinfo['timeStamp'],'returnCode'=>1000,'errorDescription'=>"");return $arr;}?>client端:<?require('include/nusoap/nusoap.php');require('include/chinese/class.Chinese.php');$client=new soapclient('http://192.168.1.45/webservice/soaptest.php?wsdl',true);$params1 = array('apID'=>"10",'timeStamp' =>"2006",'orderNo'=>"1000",'companyID' =>'','companyName' =>'','productID' =>'','userID' =>'','login' =>'','password'=>'','serviceArgs' => array("0"=>array('argName' =>'','argValue' =>'')));$reversed = $client->call('CreateCompany',$params1);//此为返回值print_r($reversed);?>就是想使用wsdl方式创建webservice,然后能传递复杂的数据,最后输出结果,但是现在好像server端无法获得数据。项目中有要求请求和应答的报文格式如下:<?xml version="1.0"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"><xs:element name="Request"><xs:complexType><xs:sequence><xs:element name="apID" type="xs:string"/><xs:element name="timeStamp" type="xs:string"/><xs:element name="orderNo " type="xs:string"/><xs:element name="companyID" type="xs:string"/><xs:element name="companyName" type="xs:string"/><xs:element name="productID" type="xs:string"/><xs:element name="userID" type="xs:string"/><xs:element name="login" type="xs:string"/><xs:element name="password" type="xs:string"/><xs:element name="serviceArgs" type="xs:ServiceArgs"/></xs:sequence></xs:complexType></xs:element><xs:complexType name="ServiceArgs"><xs:sequence><xs:element name="ServiceArg" maxOccurs="unbound"/><xs:complexType><xs:sequence><xs:element name="argName" type="xs:string"/><xs:element name="argValue" type="xs:string"/></xs:sequence></xs:complexType></xs:sequence></xs:complexType></xs:schema> snprintf() 请教请教 php查询显示条数 自动登录,大牛们进来看看 读取xml的问题,刚学xml这一块的函数 安装Apache的问题 最近听说一种UTF8的文件编辑器 一个有关外部js代码调用的问题,php的 请教一下有关附件数据库保存相关文章ID的原理 wdcp集成环境怎么使用openssl连接工商银行网银接口,签名 谈谈判断数组时! 和 !empty() 的区别 如何解密这样加密的串 急!!!!!!求 PHP 转化为 HTML 的软件
server端:
<?php
require('nusoap.php');
//$debug=1;
$soap = new soap_server();
$soap->configureWSDL('lncncApInvoke', 'usn:lncncApInvoke');
$soap->wsdl->schemaTargetNamespace = 'usn:lncncApInvoke';
$soap->wsdl->addComplexType(
'ServiceArg',
'complexType',
'struct',
'sequence',
'',
array(
'argName' => array('name'=>'argName', 'type'=>'xsd:string'),
'argValue' => array('name'=>'argValue', 'type'=>'xsd:string')
)
);
$soap->wsdl->addComplexType(
'CreateCompanyRequest',
'complexType',
'struct',
'sequence',
'',
array(
'apID' => array('name'=>'apID', 'type'=>'xsd:string'),
'timeStamp' => array('name'=>'timeStamp', 'type'=>'xsd:string'),
'orderNo' => array('name'=>'orderNo','type'=>'xsd:string'),
'companyID' => array('name'=>'companyID','type'=>'xsd:string'),
'companyName' => array('name'=>'companyName','type'=>'xsd:string'),
'productID' => array('name'=>'productID','type'=>'xsd:string'),
'userID' => array('name'=>'userID','type'=>'xsd:string'),
'login' => array('name'=>'login','type'=>'xsd:string'),
'password' => array('name'=>'password','type'=>'xsd:string'),
'serviceArgs' => array('name'=>'serviceArgs','type'=>'xsd:ServiceArg')
)
);
$soap->wsdl->addComplexType(
'CreateCompanyResponse',
'complexType',
'struct',
'sequence',
'',
array(
'apID' => array('name'=>'apID', 'type'=>'xsd:string'),
'timeStamp' => array('name'=>'timeStamp', 'type'=>'xsd:string'),
'returnCode' => array('name'=>'returnCode','type'=>'xsd:int'),
'errorDescription' => array('name'=>'errorDescription','type'=>'xsd:string')
)
);
$soap->register('CreateCompany', // method name
array('CreateCompanyRequest' => 'tns:CreateCompanyRequest'), // input parameters
array('CreateCompanyResponse' => 'tns:CreateCompanyResponse') , // output parameters
'usn:lncncApInvoke', // namespace
'usn:lncncApInvoke#CreateCompany', // soapaction
'rpc', // style
'encoded', // use
'验证用户名及随机数' // documentation
);$soap->service($HTTP_RAW_POST_DATA);function CreateCompany($reqinfo)
{
print_r($reqinfo);
$arr=array("apID"=>$reqinfo['apID'],'timeStamp' =>$reqinfo['timeStamp'],'returnCode'=>1000,'errorDescription'=>"");
return $arr;
}
?>
client端:
<?
require('include/nusoap/nusoap.php');
require('include/chinese/class.Chinese.php');$client=new soapclient('http://192.168.1.45/webservice/soaptest.php?wsdl',true);$params1 = array('apID'=>"10",'timeStamp' =>"2006",'orderNo'=>"1000",'companyID' =>'','companyName' =>'','productID' =>'','userID' =>'','login' =>'','password'=>'','serviceArgs' => array("0"=>array('argName' =>'','argValue' =>'')));$reversed = $client->call('CreateCompany',$params1);//此为返回值
print_r($reversed);?>
就是想使用wsdl方式创建webservice,然后能传递复杂的数据,最后输出结果,但是现在好像server端无法获得数据。项目中有要求请求和应答的报文格式如下:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Request">
<xs:complexType>
<xs:sequence>
<xs:element name="apID" type="xs:string"/>
<xs:element name="timeStamp" type="xs:string"/>
<xs:element name="orderNo " type="xs:string"/>
<xs:element name="companyID" type="xs:string"/>
<xs:element name="companyName" type="xs:string"/>
<xs:element name="productID" type="xs:string"/>
<xs:element name="userID" type="xs:string"/>
<xs:element name="login" type="xs:string"/>
<xs:element name="password" type="xs:string"/>
<xs:element name="serviceArgs" type="xs:ServiceArgs"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="ServiceArgs">
<xs:sequence>
<xs:element name="ServiceArg" maxOccurs="unbound"/>
<xs:complexType>
<xs:sequence>
<xs:element name="argName" type="xs:string"/>
<xs:element name="argValue" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:sequence>
</xs:complexType>
</xs:schema>