Я пытаюсь использовать API в первый раз. Моя цель (я думаю) состоит в том, чтобы сделать запрос GET к API (http://www.omdbapi.com/),), чтобы он возвращал объект JSON, который содержит информацию о конкретном фильме, но я не уверен, как это сделать с помощью PHP. Я получил ключ от сайта, URL для отправки запроса, и мне нужно передать один аргумент (идентификатор фильма IMDB).
Я попробовал Google и посмотрел здесь на SO, и я нашел это сообщение - Вызовите REST API в PHP , но я все еще не понимаю, как поступить. Спасибо предыдущему посту и сообщение в блоге, которое я нашел в Интернете (https://www.weichieprojects.com/blog/curl-api-calls-with-php/) У меня пока есть этот код, но, честно говоря, у меня возникают проблемы с его объединением, и я надеялся, что кто-то может указать мне правильное направление.
<?php
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(
'APIKEY: 111111111111111111111',
'Content-Type: application/json',
));
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;
}
?>
<?
$get_data = callAPI('GET', 'https://api.example.com/get_url/'.$user['User']['customer_id'], false);
$response = json_decode($get_data, true);
$errors = $response['response']['errors'];
$data = $response['response']['data'][0];
?>
Буду признателен, если кто-нибудь укажет мне правильное направление или поделится ресурсом, который, по вашему мнению, очень хорошо объясняет это. Кроме того, я только что скачал «почтальон», и я могу получить информацию оттуда, но я хочу знать, как сделать это с помощью PHP. Заранее спасибо.