属性 'uuid' 在类型 'unknown' 上不存在 'unknown'.ts(2339)

Property 'uuid' does not exist on type 'unknown'.ts(2339)

这是针对 Discord 机器人的,在尝试获取 api 数据时弹出错误。它应该使用获取的 uuid 进行回复,但机器人甚至无法启动,因为启动时会弹出错误。 代码:

import fetch from "node-fetch";

export default {
    callback: async (message: Message, ...args: string[]) => {

        fetch('https://api.ashcon.app/mojang/v2/user/' + args)
        .then(response => response.json())
        .then(data => {
            let uuid = data.uuid
            message.reply("uuid: " + uuid)
        })
    }
}

错误: Property 'uuid' does not exist on type 'unknown'.ts(2339)

发生错误是因为打字稿不知道您获取的数据类型;

您需要使用 as.

手动指定 data 的类型

或者,您可以使用 zodjoi 等库进行验证和自动类型推断。