Es gab viele Fragen wie diese gefragt, aber diese Vorschläge haben nicht geholfen. Ich benutze PHP cURL, um auf die n-fähige Datenbank für unser Unternehmen zuzugreifen. Die n-fähige Webschnittstelle ist kein n-zentraler Server, sondern ein von n-fähiger Server bereitgestellter Server.So laden Sie eine vollständige Webseite mit PHP
Ich arbeite an einem Projekt, bei dem wir unsere Webservices wie Ubiquiti und N-inable in ein benutzerdefiniertes Dashboard integrieren, anstatt auf sieben verschiedenen Websites zu surfen. Unifi hat eine eigene API, die gut funktioniert. N-able hat einige Versuche mit API-Implementierungen, die ich überprüft, ausprobiert und gescheitert habe.
Hier sind die Projekte:
github.com/N-able/API
https://github.com/Daandamhuis/N-Able-Dashboard
Beim Versuch, die ncod51.n-able.com Seite mit PHP und cURL, für den Zugriff auf nur der Boden der Seite geladen wird:
<?php
$url="https://ncod51.n-able.com";
//traverse array and prepare data for posting (key1=value1)
foreach ($post_data as $key => $value) {
$post_items[] = $key . '=' . $value;
}
//create the final string to be posted using implode()
$post_string = implode ('&', $post_items);
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url.'/IndexAction.action');
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT
5.1;
en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt ($ch, CURLOPT_TIMEOUT, 60);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_REFERER, $url.'loginLoginAction.action');
curl_setopt ($ch, CURLOPT_POSTFIELDS, $post_string);
curl_setopt ($ch, CURLOPT_POST, 1);
$result = curl_exec ($ch);
if (!$result) {
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch); // make sure we closeany current curl sessions
die($http_code.' Unable to connect to server. Please come back later.');
}
echo $result;
?>
Die aktuelle Anwendung wird nicht geladen. Jetzt ist es das Ziel, die Informationen von der n-fähigen Seite zu holen und sie auf eine php-erstellte Schnittstelle zu laden, die wir mit einem aktuellen Wamp-Server implementieren.
Lassen Sie mich wissen, ob zusätzliche Informationen benötigt werden. Dies ist die einzige PHP-Datei, die benutzt wird, bis ich Zugang bekomme.
Jede Hilfe wird sehr geschätzt!
HINWEIS: Die n-fähige Site ist eine https-Site.
Hatten Sie irgendwelche Warnung oder Fehler angezeigt, wenn Sie display_errors oder in den PHP-Fehlerprotokollen einschalten?Ist das Curl-Modul in WAMP aktiviert? – Mic1780
Es werden keine Fehler angezeigt und das Curl-Modul ist ebenfalls aktiviert. Ich habe überprüft, dass die Seite auch POST akzeptiert. Ich bin vorangegangen und habe die Integration mit ihrer WSDL in ein integriertes Dashboard mit unseren anderen Diensten begonnen. Ich würde immer noch gerne wissen, warum ich das nicht zur Arbeit bringen kann, da ich es in der Zukunft brauchen könnte. –
Haben Sie 'curl_error' verwendet, um zu sehen, welcher Fehler' curl_exec' für Sie zurückkehrt? Vielleicht können Sie daraus Informationen gewinnen. – Mic1780