Ankündigung

Einklappen
Keine Ankündigung bisher.

Asynchroner Webservice mit NUSOAP

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Asynchroner Webservice mit NUSOAP

    Ich benutze einen Webservice:

    $client = new nusoapclient('.......asmx?WSDL', true);
    $client->setCredentials('login', 'password');
    if ($client->getError()) die("Fehler beim Herstellen der Verbindung zum Webservice!\n");
    $proxy = $client->getProxy();
    $attributes = array('param' => 'blablabla');
    $result = $proxy->irgendeineMethodel($attributes);

    if ($client->fault) {
    echo '

    Fault: ';
    print_r($result);
    echo '
    </p>';
    } else {
    // Check for errors
    $err = $client->getError();
    if ($err) {
    // Display the error
    echo '

    Error: ' . $err . '</p>';
    } else {
    // Display the result
    echo "Result:\n";
    print_r($result);
    }
    }

    Die Methode des Webservice liefert mir je nach übergebenen Parameter "param" ein anderes Resultat. Manchmal gehen die Berechnungen nur ein paar wenige Sekunden, meistens aber jedoch Minuten bis eine halbe Stunde.

    Wenn die Berechnungen der Methode nur wenige Sekunden gehen, bekomme ich ohne Probleme die korrekte Ausgabe der Methode zurück. Braucht die Methode jedoch länger, dann bekomme ich einfach einen leeren String zurück OHNE JEGLICHE FEHLERMELDUNG.

    Ich habe gehört, dass die Lösung "asynchroner Webservice" heisst, allerdings habe ich keine Ahnung, wie ich das unter PHP verwirkliche...

    Kann mir jemand helfen??? Ich bin am Verzweifeln...


  • #2
    Eine Ansatzmöglichkeit wären sicherlich Challenge-IDs.
    Beim ersten Aufruf des Service werden die Daten übergeben und es wird eine eindeutige ID zurückgeliefert.
    Anschliessend fragt der Client alle X Minuten mit dieser ID ab, ob das Ergebnis bereits vorliegt.
    Falls ja wird es abgerufen und die ID gelöscht, falls nein wird halt ein paar Minuten später wieder angeklopft.

    //Ups, mal wieder nicht aufs Datum geguckt.

    Kommentar

    Lädt...
    X