无法从Mojang API获取非短格式UUID?求转换或替代方案
解决Minecraft短UUID转长UUID及获取长UUID的方法
一、手动转换短UUID为长格式
Minecraft的短UUID就是去掉连字符的标准UUID,两者本质是同一个标识,仅字符串格式不同。标准UUID遵循8字符-4字符-4字符-4字符-12字符的结构,只需在短UUID对应位置插入-即可完成转换。
代码示例
Python实现:
def short_to_long_uuid(short_uuid): if len(short_uuid) != 32: raise ValueError("输入的短UUID格式无效,长度必须为32位") return f"{short_uuid[:8]}-{short_uuid[8:12]}-{short_uuid[12:16]}-{short_uuid[16:20]}-{short_uuid[20:]}"
JavaScript实现:
function shortToLongUUID(shortUUID) { if (shortUUID.length !== 32) { throw new Error("输入的短UUID格式无效,长度必须为32位"); } return `${shortUUID.slice(0,8)}-${shortUUID.slice(8,12)}-${shortUUID.slice(12,16)}-${shortUUID.slice(16,20)}-${shortUUID.slice(20)}`; }
二、直接获取长UUID的替代方式
Mojang没有直接返回长格式UUID的用户名查询接口,但可以通过两次API调用配合转换处理:
- 调用
GET /users/profiles/minecraft/{username}获取目标用户的短UUID - 使用上述转换工具将短UUID转为长格式即可满足其他API的格式要求
内容的提问来源于stack exchange,提问作者Jan
相关产品推荐
相关产品推荐

