Hallo,
Ich möchte mit einigen HTTP Requests mit meiner Fritzbox kommunizieren. Mit folgendem Code führe ich erfolgreich einen POST Request auf der Box aus (Anmeldevorgang):
function PostToHost($host, $path, $referer, $data\_to\_send) {
$fp = fsockopen($host, 443);
fputs($fp, "POST $path HTTP/1.1\r\n");
fputs($fp, "Host: $host\r\n");
fputs($fp, "Authorization: Basic AUTHKEY\r\n");
fputs($fp, "Referer: $referer\r\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-length: ". strlen($data\_to\_send) ."\r\n");
fputs($fp, "Connection: close\r\n\r\n");
fputs($fp, $data\_to\_send);
while(!feof($fp)) {
$res .= fgets($fp, 128);
}
fclose($fp);
return $res;
}
$data = "login:command/password=pwd";
$x = PostToHost(
"ssl://domain.de",
"/cgi-bin/webcm",
"[http://domain.de/cgi-bin/webcm](http://domain.de/cgi-bin/webcm)",
$data
);
Das Script ist dann eingeloggt und kann weitere Einstellungen per Post Request ändern.
Jetzt muss ich aber einen GET Request auf dieselbe Seite machen, um eine CSV mit verbindungsnachweisen runterzuladen. und zwar mit folgendem Parameter:
getpage=…%2Fhtml%2Fde%2FFRITZ!Box_Anrufliste.csv
Wenn ich dieselbe Funktion wie oben benutze, nur eben mit GET statt POST bekomme ich zwar auch als Antwort
HTTP/1.0 200 OK Cache-Control: no-cache Content-type: text/html Expires: -1 Pragma: no-cache
weiß aber nicht wie ich die CSV abspeichern kann? Weiß jemand wie ich den Befehl richtig absetze?
mfg
Nor