【问题标题】:Mojang API - Retrieve latest UUID of usernameMojang API - 检索用户名的最新 UUID
【发布时间】:2016-01-21 12:29:03
【问题描述】:

我目前正在尝试使用 cURL 和 PHP 进行 API 调用,以检索使用用户名的 最新 用户的 UUID。

使用Mojang API

用户名->当时的UUID

例如,当进行 API 调用时:用户 'Chocolates'(根据 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 用户名

是否有解决方法来实现这一点?

提前致谢,

【问题讨论】:

  • 看来 curl 正在使用缓存。你应该看看这个帖子:stackoverflow.com/questions/15493769/…
  • 什么意思,真的没有意义。如何解决我获得第一个给定 UUID 的问题?
  • 澄清一下,当您说“最新”时,您的意思是“最近”,对吗?但是,如果现在没有人使用该名称,请找到最后一个使用该名称的人?
  • 是的,这就是我的意思@pockechu22 你能帮我解决这个问题吗?

标签: php api curl minecraft


【解决方案1】:

这应该是您正在搜索的 API: https://api.mojang.com/users/profiles/minecraft/<username>

对该 URL 的 GET 请求应该告诉您当前使用指定用户名的帐户的 UUID,如果此时没有人使用该名称,则返回 HTTP 状态代码 204。

在这种情况下,要获取最新用户,您应该向该 URL 发出另一个请求,但这次您将在请求中添加 ?at=<currentUnixTimestampInSeconds - 30 days> 作为查询字符串。

如果这再次为您提供 HTTP 204,请尝试 60 天前的时间戳,依此类推。重复此操作,直到您获得 UUID 或时间戳低于 1423008000,因为那是启用名称更改的时间。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-04
    • 2014-02-25
    • 2022-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-18
    相关资源
    最近更新 更多