Я новичок в веб-сервисах SOAP, и мне нужно разработать веб-сервис SOAP Server, который аутентифицируется с помощью информации заголовка. Я использую NuSOAP, так как он кажется довольно полезным классом. Я могу найти много информации относительно клиентской стороны при выполнении вызовов SOAP, но ничего такого, что является самой информацией на стороне сервера. Ищете какие-либо руководства или учебные пособия для серверной части SOAP.
Вот что я имею до сих пор, я не уверен, является ли это правильным способом для обработки аутентификации или есть встроенные методы:
$server = new nusoap_server();
$server->configureWSDL("ProjectName", "name:space");
$server->register(
"authenticate",
array("UserName"=>"xsd:string",
"Password"=>"xsd:string",
"MessageText"=>"xsd:string"),
array("return"=>"xsd:string")
);
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);
function authenticate($UserName, $Password, $MessageText) {
}
Спасибо за помощь мыльной Noobie! 🙂
Вы можете получить доступ к данным заголовка, анализируя HTTP_RAW_POST_DATA как XML и используя универсальную библиотеку XML, чтобы сделать то, что когда-либо потребуется.
$data = $HTTP_RAW_POST_DATA;
$doc = new DOMDocument();
$doc->loadXML($data);
$doc->getElementsByTagName('UserName')->item(0)->nodeValue;
Других решений пока нет …