Следуя документации здесь http://apidocs.teamup.com/ Я установил библиотеку Guzzle через composer require 'guzzlehttp/guzzle:^6.0'
... Затем я сгенерировал ключ API.Как мне интегрироваться в TeamUp API Calendar в PHP?
На примере кода они предоставили я попытался запросов к API Teamup:
<?php
$client = new GuzzleHttp\Client(['headers' => ['Teamup-Token' => 'API KEY ']]);
$res = $client->get('https://api.teamup.com/ks73ad7816e7a61b3a/subcalendars');
echo $res->getStatusCode();
// "200"
echo $res->getHeader('content-type');
// 'application/json'
echo $res->getBody();
// {"subcalendars":[ ... ]}
?>
Но не может получить никакого ответа, когда я бегу то же самое в браузере. Однако, когда я бегу локон версию на терминале
curl "https://api.teamup.com/ks73ad7816e7a61b3a/subcalendars"
-H "Teamup-Token: API KEY"
Я получаю ожидаемый ответ.
Второй Тестирование API ключа
Я попытался это:
<?php
$client = new GuzzleHttp\Client(['headers' => ['Teamup-Token' => 'API_KEY']]);
$res = $client->get('https://api.teamup.com/check-access');
if ($res->isSuccessful()) {
echo 'Your API key works!';
} else {
echo 'API key test failed: ' . $res->getBody();
}
?>
Нет ответа, но и локон версия:
curl "https://api.teamup.com/ks73ad7816e7a61b3a/subcalendars"
-H "Teamup-Token: API_KEY"
имеет ответ в формате JSON. Очевидно, я, кажется, что-то делаю неправильно. Что бы это могло быть? Кто угодно? Спасибо.
У меня была аналогичная проблема с 'GuzzleHttp'. Он не помещал заголовки правильно, передавая их через конструктора. Попробуйте использовать метод 'request()' и поместив туда заголовок. Т.е.: '$ objGuzzleClient = new GuzzleHttp \ Client(); $ o = $ objGuzzleClient-> request ( "GET", "https://api.teamup.com/check-access", массив ("headers" => массив ("Teamup-Token" => "API_KEY ")) ); var_dump ($ o-> getStatusCode()); var_dump ($ o-> getBody()); ' –
Взял ваш пример кода, вставил мой API-ключ, но ответа еще не получил. @ ʰᵈˑ – bmm