Я использую Flurry для аналитики внутри своего родного приложения, и он записывается просто отлично, но... Теперь я хочу сделать страницу бэкэнда администратора для своего приложения и хочу просмотреть статистику на моей странице. У меня нет проблем с получением одного запроса API на мою страницу, но когда вы пытаетесь спросить секунду, ничего не происходит? Вот как я пытаюсь это сделать:
// Daily activity users //
$djsondata = file_get_contents("http://api.flurry.com/appMetrics/ActiveUsers?apiAccessCode=".$flurryAccessCode."&apiKey=".$flurryIOSKey."&startDate=".$startDate."&endDate=".$nowDate."");
$dailyArray = json_decode($djsondata, true);
$day = $dailyArray['day'];
echo '<pre>1: ';
print_r($dailyArray);
echo '</pre>';
// Weekly activity users //
$wjsondata = file_get_contents("http://api.flurry.com/appMetrics/ActiveUsersByWeek?apiAccessCode=".$flurryAccessCode."&apiKey=".$flurryIOSKey."&startDate=".$ystartDate."&endDate=".$nowDate."");
$weeklyArray = json_decode($wjsondata, true);
$week = $weeklyArray['day'];
echo '<pre>2: ';
print_r($weeklyArray);
echo '</pre>';
Если я прокомментирую первый вызов API, я получаю данные во втором?!? Я что-то пропустил, или можно только один раз спросить API?
Любая помощь приветствуется и благодарит заранее :-)
Вероятно, это было бы исправлено, добавив 1-секундную задержку (т.е. sleep (1)) между запросами API, поскольку существует ограничение скорости API в 1 запрос в секунду.
"API Flurry API позволяет клиентам совершать ограниченное количество вызовов за определенную минуту. - Ограничение скорости для большинства API-интерфейсов - 1 запрос в секунду. Другими словами, вы можете звонить API один раз в секунду". Источник: https://developer.yahoo.com/flurry/docs/api/
Чтобы избежать видимых задержек, вы можете запускать эти запросы в скрипте cron, который запускается каждую минуту или час и сохраняет данные локально для будущих запросов.