Laden, iFrame Inhalt per CURL-request?

Ich habe eine Anwendung mit einer Datei (FileX.php), die unter bestimmten Bedingungen, wird echo ein iFrame-Bildschirm, die Lasten, die ein tracking-URL (FileY.php). In einer Produktionsumgebung, wo ich direkt FileX.php in der Hauptseite (FileA.php), der iFrame wird auf dem Bildschirm zurückgegeben und FileY.php erfolgreich aufgerufen.

In der Prüfung jedoch, muss ich anrufen, mehrere Versionen FileA.php die jeweils FileX.php die Ausgänge der iFrame aufrufen FileY.php. Ich bin eine Automatisierung dieser großen Anzahl von Anfragen, die mit cURL Anfragen.

Beim laden FileA.php durch eine cURL-Anfrage erfolgreich ist das include() von FileX.php aber weil es geschieht durch cURL, die das iFrame-nie lädt er die Ziel - (FileY.php).

CURL-Anfrage für fileA sieht ungefähr so aus:

TestFile.php

//URL
$url = "http://www.example.com/FileA.php";

//New Cookie file
$ckfile = tempnam("/tmp", "CURLCOOKIE");

//New Connection
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_COOKIEJAR, $ckfile);
curl_setopt ($ch, CURLOPT_COOKIEFILE, $ckfile);  
curl_setopt($ch, CURLOPT_COOKIESESSION, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_exec($ch);
curl_close($ch);

FileA.php:

include_once('FileX.php');

FileX.php:

echo("<iframe src='http://www.example.com/FileY.php' width='0' height='0'></iframe>");

FileY.php

//Contains logging stuff to log the fact that FileY.php was called.

Wie gesagt, wenn ich rufe FileA.php direkt in meinem browser, FileX.php ist enthalten und FileY.php geladen wird in das iFrame erfolgreich. Wenn ich Anrufe FileA.php via cURL den iFrame nicht geladen werden kann und FileY.php wird nie aufgerufen.

Habe ich versucht, das einwickeln der echo() im FileX.php mit ob_start() und ob_end_flush() zu zwingen, die Ausgabe aber das hat nicht funktioniert. Ich habe versucht, das hinzufügen einer sleep(1) im Fall vielleicht die Anfrage geschah zu schnell, kein Glück.

Gibt es eine cURL-option, die ich ändern kann, damit dieses geschehen kann? Ich kann nicht herausfinden, warum es nicht geladen werden der iFrame-src.

Schreibe einen Kommentar