Как получить результаты от Udemy Api с поиском? - PullRequest
0 голосов
/ 19 июня 2019

Я хочу использовать udemy api на моем сайте с полем поиска в api. Удеми дает мне этот URL: /api-2.0/courses/?search=mysql который, когда я использую, я получаю пустой массив в моих результатах.

Однако, когда я использую этот URL: /api-2.0/courses/ Он работает нормально, и я получаю 1000 строк, конечно, детали ..

Пожалуйста, помогите мне с поиском, как мне заставить его работать?

<?php
echo "API testing is going on\n";


function callAPI($method, $url, $data){
   $curl = curl_init();

   switch ($method){
      case "POST":
         curl_setopt($curl, CURLOPT_POST, 1);
         if ($data)
            curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
         break;
      case "PUT":
         curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");
         if ($data)
            curl_setopt($curl, CURLOPT_POSTFIELDS, $data);                              
         break;
      default:
         if ($data)
            $url = sprintf("%s?%s", $url, http_build_query($data));
   }

   // OPTIONS:
   curl_setopt($curl, CURLOPT_URL, $url);
   curl_setopt($curl, CURLOPT_HTTPHEADER, array(   'Accept: 
application/json, text/plain, */*',
          'Content-Type: application/json;charset=utf-8',    
        'Authorization: xxx',
   ));
   curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
   curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);

   // EXECUTE:
   $result = curl_exec($curl);
   if(!$result){die("Connection Failure");}
   curl_close($curl);
   return $result;
}

$URL="https://www.udemy.com/api-2.0/courses?search=mysql',auth= 
   ('xxclientidxx','xxclientsecretxx')'";

$get_data = callAPI('GET',$URL,false);
$response = json_decode($get_data, true);

$file_json=$response['results'];
$fp=fopen('results.json','w');
fwrite($fp,json_encode($response));
fclose($fp);

echo '<br>';


print_r($response['results']);

?>

1 Ответ

0 голосов
/ 19 июня 2019

Было бы хорошо, если бы вы могли проверить документы API, доступные от Udemy. Похоже, им доступна платформа Swagger API.

Пожалуйста, проверьте URL для API курсов: https://www.udemy.com/developers/affiliate/methods/get-courses-list/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...