java - net.minecraft.util.Session.getToken() 和 net.minecraft.util.Session.getProfileID() 的奇怪返回值

标签 java minecraft minecraft-forge

今天我正在编写一个 Minecraft 1.12.2 forge mod,它应该将 session 数据打印到日志中,当我运行它时,我得到这样的输出:

[12:22:30] [Client thread/INFO] [getsessionid]: getSessionID(): token:<ACCESS TOKEN>:<PROFILE ID>
[12:22:30] [Client thread/INFO] [getsessionid]: getPlayerID(): <PROFILE ID>
[12:22:30] [Client thread/INFO] [getsessionid]: getUsername(): _Blay_
[12:22:30] [Client thread/INFO] [getsessionid]: getToken(): <ACCESS TOKEN>

问题是,我没有审查数据,它给出了这样的文字输出。有谁知道为什么 net.minecraft.util.Session.getToken() 总是返回 <ACCESS TOKEN>字符串,net.minecraft.util.Session.getPlayerID() 总是返回 <PROFILE ID>字符串?

这是源代码:

Minecraft minecraft = Minecraft.getMinecraft();
logger.info("getSessionID(): {}", minecraft.getSession().getSessionID());
logger.info("getPlayerID(): {}", minecraft.getSession().getPlayerID());
logger.info("getUsername(): {}", minecraft.getSession().getUsername());
logger.info("getToken(): {}", minecraft.getSession().getToken());

最佳答案

Minecraft 本身正在将这些东西的实际值打印到日志中。然后,您的启动器 MultiMC 正在审查它们:https://github.com/MultiMC/Launcher/blob/518568b803c8afec29dd4ca068d3a0a6ede2da36/launcher/minecraft/MinecraftInstance.cpp#L685-L711

关于java - net.minecraft.util.Session.getToken() 和 net.minecraft.util.Session.getProfileID() 的奇怪返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74086335/

相关文章:

java - 大量 HTTP 线程处于 WAIT 状态

java - 如何正确使用Reflector Class.cast()?

java - Java中如何返回多个类的数组列表?

java - JVM、字节码、垃圾收集器和计算机代码解释(使用多次返回 "new Object()"的函数)

java - 如何从 Minecraft 编辑 .mca 文件?

java - NBT 在客户端和服务器端加载

java - 我的世界锻造模组 : Remove a block and place a new block

java - 将字符串插入PreparedStatement

regex - 如果模式匹配,则从 lua 表中打印值