PHP API
Ik wou eens kijken of ik zelf een API kon maken. Ik wil graag een eigen API omdat mijn klanten dan hun eigen panelen kunnen maken, of iets kunnen creëren om te resellen. Ik heb al iets gemaakt om data op te halen. Dit gebeurd met JSON. Nu loop ik vast, ik wil graag dat klanten hun VPS kunnen starten, stoppen en herstarten. Ik heb even gekeken op het internet en dit moet met 'POST' zeggen veel mensen. Kunnen jullie mij misschien helpen?
Deze code heb ik uit het klanten paneel geknipt. Ik weet niet of dit nodig is voor de POST.
Quote:
Ik hoop dat jullie mij kunnen helpen.
Met vriendelijke groet,
Jesper
Of je GET of POST gebruikt maakt niet uit of een VPS-ID en een status/actie door te geven.
Weet je misschien dan hoe ik kan zorgen dat webserver A (Van de klant), een actie kan laten uitvoeren op webserver B (Mijn webserver).
Je kan de cliënt bijvoorbeeld via cURL een POST of GET laten doen op de URL van je API.
Maar hoe werkt dat met een POST?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"http://www.site.nl/api.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,"vpsID=1337&action=reboot");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
var_dump($output);
?>
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"http://www.site.nl/api.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,"vpsID=1337&action=reboot");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
var_dump($output);
?>
Quote:
En als ik die code run dan krijg ik dit terug:
Quote:
string(6) "
"
"
Kan je wat meer daarover vertellen?
Gewijzigd op 11/02/2017 21:02:46 door - Ariën -
Toevoeging op 11/02/2017 21:10:14:
Maar als ik dit in api.php zet krijg ik ook nog steeds de zelfde melding.
Dus vraag de maker anders eens, of is er een documentatie over de API?
Het klanten paneel is custom gemaakt zo als ik al zei. Ik weet dat het systeem van de VPSen gemaakt is met Proxmox en dat is dat dan weer in het klantenpaneel verwerkt.
Proxmox - Powerful Open Source Server Solutions
En dan is de API-cliënt nog met Ioncube encoded.
Ik zou de maker eens vragen of die goede foutafhandeling erin kan zetten. Een lege string is ook weer zo niets-zeggend.
Gewijzigd op 11/02/2017 21:23:11 door - Ariën -
Volgens mij is dat puur om te verkomen dat ik het kan door verkopen.
API die de requests naar Proxmox doorstuurt. Dan heb je alle controle erover.
Of je bouwt gewoon een eigen Maar even nog terug te komen op wat ik zei:
Maar als ik dit in api.php zet krijg ik ook nog steeds de zelfde melding.
Quote:
Code (php)
Toevoeging op 11/02/2017 21:29:56:
http://api.getapi.nl/ Live demo :P
Gewijzigd op 11/02/2017 21:34:42 door - Ariën -
string(16) "1337
reboot"
Ik neem aan dat het nu klopt?
Gewijzigd op 11/02/2017 21:40:19 door - Ariën -
Ik ga zelf wel verder prutsen, in ieder geval heel erg bedankt.
Succes, als je nog vragen hebt, dan horen we het wel.