本文整理汇总了PHP中Zend_Soap_Server::setReturnResponse方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Soap_Server::setReturnResponse方法的具体用法?PHP Zend_Soap_Server::setReturnResponse怎么用?PHP Zend_Soap_Server::setReturnResponse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_Soap_Server
的用法示例。
在下文中一共展示了Zend_Soap_Server::setReturnResponse方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: soap
/**
* Accept the request of the clients
*
* @param string $classname
*/
public function soap($classname)
{
if (empty($classname)) {
return false;
}
list($app, $module, $class) = explode("_", $classname);
// initialize server and set URI
$optionsoap = array('location' => "http://" . $_SERVER['HTTP_HOST'] . "/" . strtolower($class) . ".wsld", 'uri' => 'urn:' . $classname);
$server = new Zend_Soap_Server(null, $optionsoap);
// set SOAP service class
$server->setClass($classname);
// Bind already initialized object to Soap Server
$server->setObject(new $classname());
$server->setReturnResponse(false);
// register exceptions for generating SOAP faults
$server->registerFaultException(array('Shineisp_Api_Exceptions'));
// handle request
$server->handle();
}
示例2: testErrorHandlingOfSoapServerChangesToThrowingSoapFaultWhenInHandleMode
public function testErrorHandlingOfSoapServerChangesToThrowingSoapFaultWhenInHandleMode()
{
if (headers_sent()) {
$this->markTestSkipped('Cannot run ' . __METHOD__ . '() when headers have already been sent; enable output buffering to run this test');
return;
}
$server = new Zend_Soap_Server();
$server->setOptions(array('location' => 'test://', 'uri' => 'http://framework.zend.com'));
$server->setReturnResponse(true);
// Requesting Method with enforced parameter without it.
$request = '<?xml version="1.0" encoding="UTF-8"?>' . "\n" . '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" ' . 'xmlns:ns1="http://framework.zend.com" ' . 'xmlns:xsd="http://www.w3.org/2001/XMLSchema" ' . 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ' . 'xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" ' . 'SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">' . '<SOAP-ENV:Body>' . '<ns1:testFunc5 />' . '</SOAP-ENV:Body>' . '</SOAP-ENV:Envelope>' . "\n";
$server->setClass('Zend_Soap_Server_TestClass');
$response = $server->handle($request);
$this->assertContains('<SOAP-ENV:Fault><faultcode>Receiver</faultcode><faultstring>Test Message</faultstring></SOAP-ENV:Fault>', $response);
}
示例3: testHandle
public function testHandle()
{
$server = new Zend_Soap_Server();
$server->setOptions(array('location'=>'test://', 'uri'=>'http://framework.zend.com'));
$server->setClass('Zend_Soap_Server_TestClass');
$localClient = new Zend_Soap_Server_TestLocalSoapClient($server,
null,
array('location'=>'test://',
'uri'=>'http://framework.zend.com'));
// Local SOAP client call automatically invokes handle method of the provided SOAP server
$this->assertEquals('Hello World!', $localClient->testFunc2('World'));
$request =
'<?xml version="1.0" encoding="UTF-8"?>' . PHP_EOL
. '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" '
. 'xmlns:ns1="http://framework.zend.com" '
. 'xmlns:xsd="http://www.w3.org/2001/XMLSchema" '
. 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" '
. 'xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" '
. 'SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">'
. '<SOAP-ENV:Body>'
. '<ns1:testFunc2>'
. '<param0 xsi:type="xsd:string">World</param0>'
. '</ns1:testFunc2>'
. '</SOAP-ENV:Body>'
. '</SOAP-ENV:Envelope>' . PHP_EOL;
$expectedResponse =
'<?xml version="1.0" encoding="UTF-8"?>' . PHP_EOL
. '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" '
. 'xmlns:ns1="http://framework.zend.com" '
. 'xmlns:xsd="http://www.w3.org/2001/XMLSchema" '
. 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" '
. 'xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" '
. 'SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">'
. '<SOAP-ENV:Body>'
. '<ns1:testFunc2Response>'
. '<return xsi:type="xsd:string">Hello World!</return>'
. '</ns1:testFunc2Response>'
. '</SOAP-ENV:Body>'
. '</SOAP-ENV:Envelope>' . PHP_EOL;
$server1 = new Zend_Soap_Server();
$server1->setOptions(array('location'=>'test://', 'uri'=>'http://framework.zend.com'));
$server1->setClass('Zend_Soap_Server_TestClass');
$server1->setReturnResponse(true);
$this->assertEquals($expectedResponse, $server1->handle($request));
}
示例4: testShouldThrowExceptionIfHandledRequestContainsDoctype
/**
* @runInSeparateProcess
*/
public function testShouldThrowExceptionIfHandledRequestContainsDoctype()
{
$server = new Zend_Soap_Server();
$server->setOptions(array('location' => 'test://', 'uri' => 'http://framework.zend.com'));
$server->setReturnResponse(true);
$server->setClass('Zend_Soap_TestAsset_ServerTestClass');
$request = '<?xml version="1.0" encoding="UTF-8"?>' . "\n" . '<!DOCTYPE foo>' . "\n" . '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" ' . 'xmlns:ns1="http://framework.zend.com" ' . 'xmlns:xsd="http://www.w3.org/2001/XMLSchema" ' . 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ' . 'xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" ' . 'SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">' . '<SOAP-ENV:Body>' . '<ns1:testFunc2>' . '<param0 xsi:type="xsd:string">World</param0>' . '</ns1:testFunc2>' . '</SOAP-ENV:Body>' . '</SOAP-ENV:Envelope>' . "\n";
$response = $server->handle($request);
$this->assertContains('Invalid XML', $response->getMessage());
}