我遇到了我创建的Zend_Soap_Server的问题。不知何故,服务器正在返回:
HTTP/1.1 202 Accepted
Date: Sat, 14 Jun 2014 07:39:06 GMT
Server: Apache/2.2.22 (Debian)
X-Powered-By: PHP/5.4.4-14+deb7u10
Content-Length: 0
Vary: Accept-Encoding
Connection: close
Content-Type: text/html
问题是,它应该回应一些事情。我的意思是我应该找回一个标识符(见下文)。
我所拥有的代码:
class MyShorts {
[...]
/**
* Store a new URL into the database.
*
* @param string The URL to store
*
* @return string the unique identifier for this URL
*
* @exception for database errors.
*/
public function store($url) {
$db = $this->getDb();
while ( true ) {
try {
$identifier = $this->getRandomIdentifier(5);
$db->insert('urls', array('identifier' => $identifier,
'long' => $url,
'created' => new Zend_Db_Expr('NOW()'),
));
return $identifier;
}
catch( Exception $e ) {
throw $e;
}
}
return '';
}
正如您在此处所见,它在数据库中存储了一个url,并返回标识符。从我所看到的是,在数据库中,它被正确存储。所以打电话和东西工作正常。
只是我没有得到标识符。怎么会这样?
谢谢!
BTW,我如何处理传入的请求:
$soap = new Zend_Soap_Server($WSDL);
$soap->setClass('MyShorts');
$soap->handle();
答案 0 :(得分:0)
不知何故上述方式不起作用。 然而,有什么用呢:
$soap = new Zend_Soap_Server(null, array('uri' => $WSDL));
显然$ WSDL是soap base url的url,而不是wsdl ...