第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Discord:通過 ID 獲取用戶

Discord:通過 ID 獲取用戶

瀟瀟雨雨 2023-08-18 10:15:06
我正在嘗試創(chuàng)建一個(gè) Web 應(yīng)用程序來管理我的 Discord 服務(wù)器的用戶。在我的數(shù)據(jù)庫中,我只存儲(chǔ)了用戶的 ID。我嘗試使用discord.js API,但據(jù)我了解,它需要一個(gè)discord 機(jī)器人才能做到這一點(diǎn)。那不是我想要的。我想從我的前端檢索用戶的信息,甚至通過調(diào)用后端函數(shù),但沒有始終在線的不和諧機(jī)器人。換句話說,我需要一些更簡(jiǎn)單的東西。我想僅使用 id 來請(qǐng)求用戶信息。在 JavaScript 中執(zhí)行此操作的最佳方法是什么?
查看完整描述

2 回答

?
12345678_0001

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個(gè)贊

您可以使用 Discord API。

首先,在此處創(chuàng)建一個(gè) Discord 應(yīng)用程序。完成此操作后,單擊側(cè)邊欄上的“機(jī)器人”并為該應(yīng)用程序創(chuàng)建一個(gè)機(jī)器人。在那里,您將在機(jī)器人用戶名下看到一個(gè)名為“令牌”的部分。復(fù)制此內(nèi)容并將其存儲(chǔ)在安全的地方。切勿分享您的令牌,這一點(diǎn)很重要。如果這樣做,您應(yīng)該重新生成它以防止濫用。

然后,您可以使用獲取用戶端點(diǎn) (?/users/{user.id}/) 來檢索用戶的 ID。這應(yīng)該由后端完成,因?yàn)樗婕笆褂脵C(jī)器人令牌進(jìn)行身份驗(yàn)證。


直接使用API

以下是如何使用 Node.js 使用 Discord API 通過 ID 獲取用戶的最小示例:

const fetch = require('node-fetch')


// You might want to store this in an environment variable or something

const token = 'YOUR_TOKEN'


const fetchUser = async id => {

? const response = await fetch(`https://discord.com/api/v9/users/${id}`, {

? ? headers: {

? ? ? Authorization: `Bot ${token}`

? ? }

? })

? if (!response.ok) throw new Error(`Error status code: ${response.status}`)

? return JSON.parse(await response.json())

}

響應(yīng)將是這樣的:


{

? "id": "123456789012345678",

? "username": "some username",

? "avatar": null,

? "discriminator": "1234",

? "public_flags": 0,

? "banner": null,

? "banner_color": null,

? "accent_color": null

}

使用庫

或者,您也可以使用 Discord 庫來執(zhí)行此操作。以下示例還處理速率限制。

@discordjs/rest?+?Discord-api-類型

const {REST} = require('@discordjs/rest')

const {Routes} = require('discord-api-types/v9')


const token = 'YOUR_TOKEN'


const rest = new REST().setToken(token)


const fetchUser = async id => rest.get(Routes.user(id))

結(jié)果將是與上面描述的相同的 JSON。


對(duì)于 TypeScript 用戶:


import type {RESTGetAPIUserResult, Snowflake} from 'discord-api-types/v9'


const fetchUser = async (id: Snowflake): Promise<RESTGetAPIUserResult> =>

? rest.get(Routes.user(id)) as Promise<RESTGetAPIUserResult>

const {Client} = require('discord.js')


const token = 'YOUR_TOKEN'


const client = new Client({intents: []})

client.token = token


const fetchUser = async id => client.users.fetch(id)

結(jié)果fetchUser將是一個(gè)discord.jsUser對(duì)象。



查看完整回答
反對(duì) 回復(fù) 2023-08-18
?
慕妹3242003

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊

你可以做的就是

let user = message.guild.cache.get('id');

(由@cherryblossom修改)


查看完整回答
反對(duì) 回復(fù) 2023-08-18
  • 2 回答
  • 0 關(guān)注
  • 387 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)