Mojang API — Получить последний UUID имени пользователя

В настоящее время я пытаюсь сделать вызов API, используя cURL с PHP для получения UUID самый последний пользователь, который использовал имя пользователя.

С использованием Mojang API:

Имя пользователя -> UUID во время

Например, при вызове API:шоколадные конфеты(Который был использован четырьмя пользователями в соответствии с NameMCЯ получаю UUID первого в мире пользователя, использующего это имя.

Код:

public function api_Changedto($uuid, $username)
{
$ch = curl_init();

//Set other default cUrl settings
curl_setopt(        $ch, CURLOPT_FOLLOWLOCATION,   1);
curl_setopt(        $ch, CURLOPT_HEADER,           0);
curl_setopt(        $ch, CURLOPT_RETURNTRANSFER,   1);
curl_setopt(        $ch, CURLOPT_POST,         0);
curl_setopt(        $ch, CURLOPT_URL,          "https://api.mojang.com/user/profiles/" . $uuid . "/names");

curl_setopt(        $ch, CURLOPT_CAINFO,     "certificates/curl/cacert.pem");

$response = curl_exec($ch);

if($response) {
$decoded = json_decode($response);

$match = false;

foreach ($decoded as $userInfo){

if($match){

$changedTo = ($userInfo->changedToAt + 3196800000) / 1000;
break;

}else{
if(strtolower($username) == strtolower($userInfo->name)){
$match = true;
}
}
}
}
return $changedTo;
}

?at = 0 может использоваться для получения UUID исходного пользователя этого
имя пользователя

Есть ли обходной путь для достижения этой цели?

Заранее спасибо,

0

Решение

Это должен быть API, который вы ищете:
https://api.mojang.com/users/profiles/minecraft/<username>

GET запрос на этот URL должен сообщить вам UUID учетной записи, которая в данный момент использует указанное имя пользователя, или код состояния HTTP 204, если имя не используется никем в это время.

Чтобы получить последнего пользователя в этом случае, вы должны сделать еще один запрос на этот URL, но на этот раз вы добавите ?at=<currentUnixTimestampInSeconds - 30 days> как строка запроса на запрос.

Если это снова даст вам HTTP 204, попробуйте временную метку 60 дней назад и так далее. Повторяйте это, пока не получите UUID или отметку времени ниже, чем 1423008000, потому что это было, когда изменение имени было включено.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]