API Fortnite Tracker работает только на локальной машине? - программирование
Подтвердить что ты не робот

API Fortnite Tracker работает только на локальной машине?

В настоящее время я создаю сайт начальной загрузки, используя мои данные Fortnite в качестве данных и, в конце концов, размещаю их в своем корте. Тем не менее, мне удалось заставить его работать отлично, когда я запускаю на своей локальной машине, но когда я загрузил его в мой каталог хост-сервера, сайт загружается, он просто не имеет данных. Ошибка, которую я получаю, я верю, относится к моему файлу JSON, но я предполагаю, что единственная причина, по которой происходит эта ошибка, заключается в том, что там нет данных, поскольку она не работает с API-интерфейсом Fortnite при работе на чем-либо, кроме моей локальной машины, Кто-нибудь еще когда-либо испытывал подобное?

Ошибка:

Ошибка исходной карты: SyntaxError: JSON.parse: неожиданный символ в строке 2 столбца 1 данных JSON

URL исходной карты: bootstrap.min.css.map

Это мой код. Я предполагаю, что не так много смысла публиковать его, как если бы он выполнялся на моей локальной машине, логика говорит, что это нормально, не так ли?

<?php

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.fortnitetracker.com/v1/profile/psn/myusername");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'TRN-Api-Key: mykey'
));
$response = curl_exec($ch);
curl_close($ch);
$fp = fopen("stats.json", "w");
fwrite($fp, $response);
fclose($fp);

$data = json_decode(file_get_contents("stats.json"));
$solo = $data->stats->p2;//solos data
$duos = $data->stats->p10;//duos data
$squads = $data->stats->p9;//squads data
$solo_wins = $solo->top1->valueInt;
$duos_wins = $duos->top1->valueInt;
$squads_wins = $squads->top1->valueInt;
$solo_matches = $solo->matches->valueInt;
$duos_matches = $duos->matches->valueInt;
$squads_matches = $squads->matches->valueInt;
$solo_kd = $solo->kd->valueDec;
$duos_kd = $duos->kd->valueDec;
$squads_kd = $squads->kd->valueDec;
$solo_games = $solo->matches->valueInt;
$duos_games = $duos->matches->valueInt;
$squads_games = $squads->matches->valueInt;
$solo_kills = $solo->kills->valueInt;
$duos_kills = $duos->kills->valueInt;
$squads_kills = $squads->kills->valueInt;

?>
4b9b3361

Ответ 1

Вы правы, что эта проблема возникла для других: кажется, что Hostgator автоматически не позволяет объединять SSH и cURL (ссылку). Если вы google "Hostgator cURL вас уже есть полезные ответы". Несколько человек (например, этот и комментатор здесь) сообщили, что обновление до PHP 5.5/5.6 решает проблему. Я бы посоветовал вам проверить предложения, сделанные Станислав в комментариях попозже.

Другое решение может заключаться в отключении CURLOPT_SSL_VERIFYPEER и других параметров SSL.

Однако без фактического сообщения об ошибке, возвращаемого curl_exec, ваш текущий вопрос не дает нам достаточной информации, чтобы точно определить проблему.