繁体   English   中英

IGDB API Axios 请求返回未定义

[英]IGDB API Axios request returning undefined

我构建了一个 Discord 机器人,我想在 IGDB 中查询搜索到的游戏并返回一些信息。 无论我搜索或更改什么,我目前都只是得到“未定义”。

我正在使用 CORS-anywhere 作为代理。 不确定是不是这个问题。 如何获得响应以像在 Postman 中那样在控制台中显示数据?

这是我的代码:

client.on('message', (message) => {
    if (message.author.bot) return;

    if (message.content.startsWith(PREFIX)) {
        const [CMD_NAME, ...args] = message.content
            .trim()
            .substring(PREFIX.length)
            .split(/\s+/);
        
        if (CMD_NAME === 'search') {
            if (args.length === 0) return message.reply('Please provide a game.');
            
            // Perform a GET request from the IGDB API through the cors-anywhere proxy.
            const proxyUrl = 'https://cors-anywhere.herokuapp.com/'

            axios({
                url: `${proxyUrl}https://api-v3.igdb.com/games`,
                method: 'POST',
                headers: {
                    'Origin': 'https://api-v3.igdb.com/games',
                    'Accept': 'application/json',
                    'user-key': process.env.IGDB_USER_KEY
                },
                data: `fields name,first_release_date,platforms,cover,summary;search ${args};sort popularity desc;limit 1;`
            })
            .then(response => {
                console.log(response.data);
            })
            .catch(err => {
                console.log(err.response.request._response);
            })
        }
    }
})```

我也在研究 igdb 并且非常新。 如果我错了,请告诉我,我会删除它:D

我认为现在需要 twitch 身份验证,标题应该有所不同。 您必须致电https://id.twitch.tv/oauth2/token? 为了让您获得一个access_token ,然后您可以将您的请求标头与您的client_id一起传递。

现在您有了客户端 ID 和客户端密钥,您将使用 oauth2 以 Twitch 开发人员身份进行身份验证。 详细信息可以在 Twitch 开发人员文档中找到。

这样做将为您提供一个访问令牌,用于未来对我们 API 的请求。

使用以下查询字符串参数向https://id.twitch.tv/oauth2/token发出 POST 请求,并相应地替换您的客户端 ID 和客户端密钥。

client_id=Client ID

client_secret=Client Secret

grant_type=client_credentials

headers: {
                        'Accept': 'application/json',
                        'Client-ID':'your_client_id',
                        'Authorization':'Bearer access_token'
                    },

https://api-docs.igdb.com/?javascript#about

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM