首页 > 解决方案 > 使用请求 PATCH 从 ElectronJS 更新 Discord Profile 图片

问题描述

我正在尝试将应用程序编码到 Electron JS 中,以允许该人同时在多个应用程序上更改他们的个人资料图片。为此,我使用每个平台的 API。对于 Twitter,它可以正常工作,但我在 Discord 级别阻止。我可以在个人资料上发出 GET 请求,但我不能:PATCH/users/@me https://discordapp.com/developers/docs/resources/user#modify-current-user

我不知道是否是令牌没有提供足够的权力,因为我只要求身份作为我的应用程序的许可。我尝试在真假之间传递 JSON 以添加内容类型,但我仍然有相同的答案:{code: 0, message: '401: Unauthorized'}

function postDiscord(image) {
    const imageDataURI = require('image-data-uri')
    let {token} = store.get('discordToken') //get stored token

    imageDataURI.encodeFromFile(image)
    .then(res => {
        request({
            method: 'PATCH',
            url: 'https://discordapp.com/api/v6/users/@me',
            headers: {
               'Authorization': 'Bearer '+token,
               'User-Agent': 'someBot (site, v0.1)'
            },
            body: {
                'avatar': res
            },
            json: true
            }, function(err, res) {
                if(err) {
                  console.error(err);
                } else {
                    console.log(res.body)
                }

            }
        );
    })
}

{代码:0,消息:'401:未经授权'}

标签: node.jsapielectrondiscord

解决方案


参考 Discord:https ://github.com/discordapp/discord-api-docs/issues/1057 无法使用 Oauth 上传新图片:/


推荐阅读