2016-09-01 2 views
10

Wenn ich versuche, die Datei lokal zu speichern, wird das Antwortobjekt als null zurückgegeben. Die Seite, die ich erfassen möchte, braucht viel Ladezeit, für die ich einen Rückruf benötige, um mich zu benachrichtigen Seitenressourcen werden vollständig geladen. Ist meine Vorgehensweise korrekt?PHANTOMJS PHP: Leeres Antwortobjekt

Wenn nicht versucht wird, die Datei lokal zu speichern, ist das zurückgegebene Antwortobjekt nicht null.

Hier ist mein Code:

$client = Client::getInstance(); 
$client->getEngine()->setPath('path/to/phantomjs'); 
    $client->isLazy(); 

    $request = $client->getMessageFactory()->createPdfRequest('http://google.com'); 
    $response = $client->getMessageFactory()->createResponse(); 

    $file = 'path/binfile.pdf'; 

    $request->setOutputFile($file); 

    $client->send($request, $response); 

Wie erreiche ich und wissen, wann alle Seiten Ressourcen vollständig geladen werden?

Antwort

0

Ich bin mit dem gleichen Problem konfrontiert. Ich habe jonnyw/php-phantomjs in Laravel verwendet.

Benutzer setTimeout-Funktion. Für mich geht das. Versuche dies.

$request->setOutputFile($file); 
$request->setTimeout(10000); 

Ich hoffe, es hilft.