0f32cf00ad
membuat perubahan dan update
56 lines
1.4 KiB
PHP
56 lines
1.4 KiB
PHP
<?php
|
|
|
|
class CrudRadiusServer
|
|
{
|
|
private $token = 'x4R7yP9@#gT1z!fL2wE8hQ%kM5vN0uS6aC';
|
|
private $baseUrl = "http://103.242.106.56:4408/api/";
|
|
|
|
public function request($action, $method = 'POST', $data = [])
|
|
{
|
|
$url = $this->baseUrl . "?action=" . urlencode($action);
|
|
|
|
$ch = curl_init($url);
|
|
|
|
$headers = [
|
|
'Content-Type: application/json',
|
|
'Authorization: Bearer ' . $this->token
|
|
];
|
|
|
|
// Set CURL options
|
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
|
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, strtoupper($method));
|
|
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
|
|
|
|
// Jika ada data, kirim sebagai JSON
|
|
if (!empty($data)) {
|
|
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
|
|
}
|
|
|
|
// Eksekusi request
|
|
$response = curl_exec($ch);
|
|
|
|
if (curl_errno($ch)) {
|
|
// Return error sebagai array
|
|
return [
|
|
'success' => false,
|
|
'error' => curl_error($ch)
|
|
];
|
|
}
|
|
|
|
curl_close($ch);
|
|
|
|
// Decode JSON response
|
|
$decoded = json_decode($response, true);
|
|
|
|
// Jika JSON tidak valid
|
|
if (json_last_error() !== JSON_ERROR_NONE) {
|
|
return [
|
|
'success' => false,
|
|
'error' => 'Invalid JSON response from API'
|
|
];
|
|
}
|
|
|
|
return $decoded;
|
|
}
|
|
}
|