Project

General

Profile

Actions

Вызов методов АПИ

С использованием функции file_get_contents

<?php
define ("apiKey","АПИ_КЛЮЧ");
define ("apiClientId","ВАШ_ID_КЛИЕНТА");
define ("apiDomainName","ИМЯ_ДОМЕНА");
define ("apiRequestUrl","https://api.ilcats.ru/");
define ("apiExamlpeBrandName","audi");
define ("apiCurrentVersion","2.0");

function generateRequestURI ($uriParameters) {
    $paramsArray = array();
    foreach ($uriParameters as $key => $val)
        $paramsArray[] = $key . "=" . $val;
    $requestString = implode("&",$paramsArray);
    return $requestString;
};

function getApiData ($apiRequestUrl, $functionParameters, $clientParameters){
    // Запрос данных с помощю функции file_get_contens();

    $requestParameters = array_merge($functionParameters, $clientParameters); // объединяем массивы параметров вызова и параметров клиента API 
    $requestString = generateRequestURI($requestParameters); //генерируем строку вызова 
    $dataString = file_get_contents($apiRequestUrl . "?" . $requestString);
    return ($dataString);

};

$functionParameters= array( // Список параметров вызова
    "function" => "defaultFunction", // Запрос функции по умолчанию
    "brand" => apiExamlpeBrandName // название бренда
);

$clientParameters = array( 
        "apiKey" => apiKey, 
        "clientId" => apiClientId, 
        "domain" => apiDomainName,
        "apiVersion" => apiCurrentVersion
);

$apiRequestUrl = apiRequestUrl;

$st = getApiData($apiRequestUrl, $functionParameters, $clientParameters);

header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
echo $st;

?>

С использованием функции cURL

<?php
define ("apiKey","АПИ_КЛЮЧ");
define ("apiClientId","ВАШ_ID_КЛИЕНТА");
define ("apiDomainName","ИМЯ_ДОМЕНА");
define ("apiRequestUrl","https://api.ilcats.ru/");
define ("apiExamlpeBrandName","audi");
define ("apiCurrentVersion","2.0");

function generateRequestURI ($uriParameters) {
    $paramsArray = array();
    foreach ($uriParameters as $key => $val)
        $paramsArray[] = $key . "=" . $val;
    $requestString = implode("&",$paramsArray);
    return $requestString;
};

function getApiData ($apiRequestUrl, $functionParameters, $clientParameters){
    // Запрос данных с помощю функции cURL;

    $requestParameters = array_merge($functionParameters, $clientParameters); // объединяем массивы параметров вызова и параметров клиента API 
    $requestString = generateRequestURI($requestParameters); //генерируем строку вызова 

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $apiRequestUrl . "?" . $requestString);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($ch);
    curl_close($ch);

    return ($output);

};

$functionParameters= array( // Список параметров вызова
    "function" => "defaultFunction", // Запрос функции по умолчанию
    "brand" => apiExamlpeBrandName // название бренда
);

$clientParameters = array( 
        "apiKey" => apiKey, 
        "clientId" => apiClientId, 
        "domain" => apiDomainName,
        "apiVersion" => apiCurrentVersion
);

$apiRequestUrl = apiRequestUrl;

$st = getApiData($apiRequestUrl, $functionParameters, $clientParameters);

header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
echo $st;
?>

Updated by Артем almost 4 years ago · 5 revisions