node.js - 使用请求 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:未经授权'}
解决方案
参考 Discord:https ://github.com/discordapp/discord-api-docs/issues/1057 无法使用 Oauth 上传新图片:/
推荐阅读
- .net-core - 如何登录到 Azure Function 2.0 中的其他日志提供程序
- python - Python 正则表达式排除电子邮件模式但包含@string 模式
- javascript - 如何通过单击具有幻灯片效果的锚点而不是直接加载页面来打开网站中的另一个页面?
- c++ - 如何从外部进程访问视频帧?
- r - 根据公共 ID 将行连接成一行
- java - Vaadin 行的网格编号
- batch-file - 在批处理文件中使用 7zip“排除通配符”
- r - 使用 downloadHandler 时如何修复“找不到文件”?
- keras - 使用 Keras LSTM 预测未来值
- javascript - JS Array.prototype.sort() 在 Firefox 中失败,在 Chrome 中有效