Проект

Общее

Профиль

Вызов методов АПИ » История » Редакция 4

Редакция 3 (Артем, 24.11.2017 15:40) → Редакция 4/5 (Артем, 24.11.2017 15:41)

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

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

 <pre><code class="php"> 
 <?php 
 define ("apiKey","АПИ_КЛЮЧ"); ("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; 

 ?> 
 </code></pre> 

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

 <pre><code class="php"> 
 define ("apiKey","АПИ_КЛЮЧ"); ("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; 
 </code></pre>