0
我正在使用WAMP & CakePHP,并尝试添加一个NuSOAP服务器。我可以通过生成一个的NuSOAP WSDL的动态,但在正在通过的NuSOAP设置底部的参数,并没有任何意义:PHP/NuSOAP设置肥皂:地址位置
<soap:address location="http://localhost/cakephp/app/webroot/index.php"/>
正确的路线是:
<soap:address location="http://localhost/cakephp/web_service/web_service"/>
我无法弄清楚如何改变这一点,或者甚至NuSOAP正在拿起那个位置(我在代码中完全没有提及它)。
这是我的代码,我使用:
class WebServiceController extends AppController {
var $components = array('RequestHandler');
public function web_service()
{
$this->layout = FALSE;
$this->autoRender = FALSE;
Configure::write('debug', 0);
$this->RequestHandler->respondAs('xml');
App::import('Vendor', 'nusoap', array('file' => 'nusoap'.DS.'lib'.DS.'nusoap.php'));
include 'local_functions.php';
if (!isset($HTTP_RAW_POST_DATA)) $HTTP_RAW_POST_DATA =file_get_contents('php://input');
$server = new soap_server();
$namespace = "http://localhost/web_service/web_service";
$server->configureWSDL("web-service", $namespace);//, "urn:web-service");
$server->wsdl->schemaTargetNamespace = $namespace;
include 'wsdl_types.php';
$server->register("Subscribe", array("accessKey" => "xsd:string","publisher" => "xsd:string","subscribeData" => "xsd:string"), array("return" => "xsd:string"), "urn:web-service", "urn:web-service#Subscribe", "rpc", "encoded", "Subscribe to mail or mobile list(s)");
$server->register("SendEmailFromWeb", array("accessKey" => "xsd:string","publisher" => "xsd:string","sendEmailFromWebData" => "xsd:string"), array("return" => "xsd:string"), "urn:web-service", "urn:web-service#SendEmailFromWeb", "rpc", "encoded", "Send email from web interface");
$server->register("SendEmailFromMobile", array("accessKey" => "xsd:string","publisher" => "xsd:string","sendEmailFromMobileData" => "xsd:string"), array("return" => "xsd:string"), "urn:web-service", "urn:web-service#SendEmailFromMobile", "rpc", "encoded", "Send email from mobile interface");
$server->register("UpdateProfile", array("accessKey" => "xsd:string","publisher" => "xsd:string","updateProfileData" => "xsd:string"), array("return" => "xsd:string"), "urn:web-service", "urn:web-service#UpdateProfile", "rpc", "encoded", "Update subscriber profile (name, etc.)");
$server->register("Unsubscribe", array("accessKey" => "xsd:string","publisher" => "xsd:string","unsubscribeData" => "xsd:string"), array("return" => "xsd:string"), "urn:web-service", "urn:web-service#Unsubscribe", "rpc", "encoded", "Unsubscribe from mail or mobile list(s)");
$server->register("SMSTriggeredEmailNotify", array("accessKey" => "xsd:string","publisher" => "xsd:string","smsTriggeredEmailNotifyData" => "xsd:string"), array("return" => "xsd:string"), "urn:web-service", "urn:web-service#SMSTriggeredEmailNotify", "rpc", "encoded", "Still working on this");
$server->service($HTTP_RAW_POST_DATA);
}
}
你是怎么写的函数 “订阅” 。我有一些cakephp的问题。就像“msg解析中的错误:xml是空的,没有解析!”。如何避免这一点。在正常的PHP它工作正常 – 2013-09-13 05:54:04