Mojang API¶
요청이 실패하면 적절한 예외가 발생합니다. 예를 들어, Mojang 서버가 오류 메시지를 반환할 때 MojangException
이 발생합니다.
AccessToken
또는 UUID
를 어떻게 얻나요?¶
이 토큰들은 Mojang 인증 또는 Microsoft Xbox 인증을 통해 얻을 수 있습니다. 로그인과 세션을 참조하세요.
var session = await loginHandler.Authenticate();
var username = session.Username;
var uuid = session.UUID;
메서드¶
GetUUID¶
사용자명 -> UUID
Mojang mojang = new Mojang(new HttpClient());
PlayerUUID uuid = await mojang.GetUUID("username");
// uuid.UUID
// uuid.IsLegacy
// uuid.IsDemo
GetUUIDs¶
사용자명들 -> UUID들
Mojang mojang = new Mojang(new HttpClient());
PlayerUUID[] uuids = await mojang.GetUUIDs(new string[] { "user1", "user2" });
foreach (PlayerUUID uuid in uuids)
{
Console.WriteLine(uuid.UUID);
}
GetNameHistories¶
참고: 이 API는 Mojang에 의해 더 이상 사용되지 않습니다
Mojang mojang = new Mojang(new HttpClient());
NameHistory[] response = await mojang.GetNameHistories("uuid");
foreach (NameHistory item in response.Histories)
{
// item.Name
// item.ChangedToAt
// item.ChangedTime
}
GetProfileUsingUUID¶
Mojang mojang = new Mojang(new HttpClient());
PlayerProfile profile = await mojang.GetProfileUsingUUID("uuid");
// profile.UUID
// profile.Name
// profile.Skin
// profile.IsLegacy
GetProfileUsingAccessToken¶
참고: 이 API는 Xbox 계정에서만 작동합니다
Mojang mojang = new Mojang(new HttpClient());
PlayerProfile profile = await mojang.GetProfileUsingAccessToken("accessToken");
GetPlayerAttributes¶
참고: 이 API는 Xbox 계정에서만 작동합니다
Mojang mojang = new Mojang(new HttpClient());
PlayerAttributes attributes = await mojang.GetPlayerAttributes("accessToken");
// attributes.Privileges.OnlineChat
// attributes.Privileges.MultiplayerServer
// attributes.Privileges.MultiplayerRealms
// attributes.Privileges.Telemtry
// attributes.ProfanityFilterPreferences.ProfanityFilterOn
GetPlayerBlocklist¶
참고: 이 API는 Xbox 계정에서만 작동합니다
Mojang mojang = new Mojang(new HttpClient());
string[] blocklists = await mojang.GetPlayerBlocklist("accessToken");
GetPlayerCertificates¶
참고: 이 API는 Xbox 계정에서만 작동합니다
Mojang mojang = new Mojang(new HttpClient());
PlayerCertificates certs = await mojang.GetPlayerCertificates("accessToken");
// certs.KeyPair.PrivateKey
// certs.KeyPair.PublicKey
// certs.PublicKeySignature
// certs.ExpiresAt
// certs.RefreshedAfter
CheckNameAvailability¶
Mojang mojang = new Mojang(new HttpClient());
string? result = await mojang.CheckNameAvailability("accessToken", "newName");
ChangeName¶
참고: 이 API는 Xbox 계정에서만 작동합니다
Mojang mojang = new Mojang(new HttpClient());
PlayerProfile profile = await mojang.ChangeName("accessToken", "newName");
ChangeSkin¶
참고: 이 API는 Xbox 계정에서만 작동합니다
Mojang mojang = new Mojang(new HttpClient());
// SkinType.Steve 또는 SkinType.Alex
PlayerProfile response = await mojang.ChangeSkin("uuid", "accessToken", SkinType.Steve, "skinUrl");
UploadSkin¶
참고: 이 API는 Xbox 계정에서만 작동합니다
Mojang mojang = new Mojang(new HttpClient());
// SkinType.Steve 또는 SkinType.Alex
await mojang.UploadSkin("accessToken", SkinType.Steve, "skin_png_file_path");
Mojang mojang = new Mojang(new HttpClient());
Stream stream; // 스킨 업로드를 위한 스트림 생성
await mojang.UploadSkin("accessToken", SkinType.Steve, stream, "file_name");
ResetSkin¶
참고: 이 API는 Xbox 계정에서만 작동합니다
GetBlockedServer¶
GetStatistics¶
참고: 이 API는 Mojang에 의해 폐지되었습니다
Mojang mojang = new Mojang(new HttpClient());
Statistics stats = await mojang.GetStatistics(
StatisticOption.ItemSoldMinecraft,
StatisticOption.ItemSoldCobalt
);
// stats.Total
// stats.Last24h
// stats.SaleVelocityPerSeconds
CheckGameOwnership¶
참고1: 이 API는 Xbox 계정에서만 작동합니다
참고2: 이 API는 Xbox 게임 패스를 확인하지 않습니다. 사용자가 구매 대신 Xbox 게임 패스로 마인크래프트를 가지고 있다면, 이 API는 false
를 반환합니다. 하지만 사용자는 마인크래프트를 소유하고 있으며 플레이할 수 있습니다.