Hallo!
Ich möchte mehrere Funktionen über einen WebService anbieten.
Um die Services zu nutzen muss man angemeldet sein. D.h. Ich habe eine Funktion chkAuth der man User und Password mitgeben muss und damit für eine bestimmte Zeit angemeldet ist. (Am besten über eine PHP-Session oder ähnliches).
Ich habe zum Testen mal 2 Funktionen in eine Klasse geschrieben:
Im gleichen PHP-File liegt der Teil für den Server:
Wenn ich die chkAuth-Funktion mit einem SOAP-Client Aufrufe funktioniert dieser und gibt 'OK' oder 'False' zurück.
Nur die test-Funktion gibt immer ein 'Nope!' zurück.
Was mache ich falsch? Danke!
Ich möchte mehrere Funktionen über einen WebService anbieten.
Um die Services zu nutzen muss man angemeldet sein. D.h. Ich habe eine Funktion chkAuth der man User und Password mitgeben muss und damit für eine bestimmte Zeit angemeldet ist. (Am besten über eine PHP-Session oder ähnliches).
Ich habe zum Testen mal 2 Funktionen in eine Klasse geschrieben:
PHP-Code:
class SoapTest {
function Soap_chkAuth($User, $Password) {
$state = anmeldungpruefen("'".$User."'","'".$Password."'");
if ($state == 'OK') {
$_SESSION['CurrentUser'] = $User;
}
return $state;
}
function Soap_test() {
$result = 'Nope!';
if (isset($_SESSION['CurrentUser'])) {
$result = 'Angemeldet: '.$_SESSION['CurrentUser'];
}
return $result;
}
}
PHP-Code:
session_start();
$server = new SoapServer(Null,
array('uri'=> $_SERVER['REQUEST_URI']));
// $server->addFunction(array('Soap_chkAuth'));
$server->setClass("SoapTest"); //Egal wie ich die Klasse hinzufüge, der Service läuft!
//$server->setObject(new SoapTest());
$server->setPersistence(SOAP_PERSISTENCE_SESSION);
$server->setPersistence(SOAP_PERSISTENCE_REQUEST);
$server->handle();
Nur die test-Funktion gibt immer ein 'Nope!' zurück.
Was mache ich falsch? Danke!
Kommentar