В настоящее время я пытаюсь сделать вызов 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 исходного пользователя этого
имя пользователя
Есть ли обходной путь для достижения этой цели?
Заранее спасибо,
Это должен быть API, который вы ищете:
https://api.mojang.com/users/profiles/minecraft/<username>
GET
запрос на этот URL должен сообщить вам UUID учетной записи, которая в данный момент использует указанное имя пользователя, или код состояния HTTP 204, если имя не используется никем в это время.
Чтобы получить последнего пользователя в этом случае, вы должны сделать еще один запрос на этот URL, но на этот раз вы добавите ?at=<currentUnixTimestampInSeconds - 30 days>
как строка запроса на запрос.
Если это снова даст вам HTTP 204, попробуйте временную метку 60 дней назад и так далее. Повторяйте это, пока не получите UUID или отметку времени ниже, чем 1423008000, потому что это было, когда изменение имени было включено.
Других решений пока нет …