我想使用soap和Symfony2创建一个Web服务,但是它给了我以下错误: 无法连接到主机
这是我的代码:
<?php
namespace Acme\DemoBundle\Services;
class HelloService
{
private $message;
public function __construct()
{
$this->message = "Hola";
}
public function hello($name)
{
return $this->message+$name;
}
}
?>
#app/config/config.yml
services:
hello_service:
class: Acme\DemoBundle\Services\HelloService
#app/config/routing.yml
servicio:
pattern: /soap
defaults: {_controller:AcmeDemoBundle:Demo:service}
cliente:
pattern: /cliente
defaults: {_controller:AcmeDemoBundle:Demo:cliente}
public function serviceAction() {
$server = new \SoapServer('http://example.com/src/Acme/DemoBundle/Resources/views/Demo/hello.wsdl');
$server->setObject($this->get('hello_service'));
$response = new Response();
$response->headers->set('Content-Type', 'text/xml; charset=ISO-8859-1');
ob_start();
$server->handle();
$response->setContent(ob_get_clean());
}
public function clienteAction(){
$client = new \Soapclient('http://example.com/web/app_dev.php/soap?wsdl');
$result = $client->call('hello', array('name' => 'Scott'));
}
浏览器中的网址为:http://example.com/web/app_dev.php/cliente 可能有什么不对?
答案 0 :(得分:0)
我通过擦除缓存ini_set('soap.wsdl_cache_enabled',0)解决了这个问题;函数ini_set( 'soap.wsdl_cache_ttl',0);