Api call
This commit is contained in:
@@ -55,4 +55,50 @@ abstract class BaseController extends Controller
|
||||
|
||||
// E.g.: $this->session = \Config\Services::session();
|
||||
}
|
||||
public function APIcall($method, $url, $data) {
|
||||
// $curl = curl_init();
|
||||
$curl = curl_init($url);
|
||||
switch ($method) {
|
||||
case "GET":
|
||||
$params2 = '';
|
||||
foreach($data as $key2=>$value2)
|
||||
$params2 .= $key2.'='.$value2.'&';
|
||||
|
||||
$params2 = trim($params2, '&');
|
||||
$url = $url.'?'.$params2;// add param to URL
|
||||
log_message('critical', "API URL FINAL =>".$url );
|
||||
//curl_setopt($curl, CURLOPT_FRESH_CONNECT, true);
|
||||
//curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
|
||||
//curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
|
||||
break;
|
||||
case "POST":
|
||||
curl_setopt($curl, CURLOPT_POST, 1);
|
||||
if ($data)
|
||||
// curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
|
||||
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));
|
||||
// curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
|
||||
break;
|
||||
case "PUT":
|
||||
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");
|
||||
if ($data)
|
||||
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
|
||||
break;
|
||||
}
|
||||
|
||||
curl_setopt($curl, CURLOPT_URL, $url);
|
||||
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
|
||||
'APIKEY: RegisteredAPIkey',
|
||||
'Content-Type: application/json',
|
||||
));
|
||||
|
||||
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
|
||||
$result = curl_exec($curl);
|
||||
|
||||
if(!$result) {
|
||||
echo("Connection failure!");
|
||||
}
|
||||
curl_close($curl);
|
||||
return json_decode($result, true);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user