[英]discordjs REST - create a message using api endpoint
嘿,我正在嘗試使用 discordjs REST 創建一條消息,但出現以下錯誤:
S[50109]: The request body contains invalid JSON.
at Q.runRequest (C:\Users\hp\Sync\hp\Test-bot\node_modules\@discordjs\rest\dist\index.js:7:581)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async Q.queueRequest (C:\Users\hp\Sync\hp\Test-bot\node_modules\@discordjs\rest\dist\index.js:5:2942) {
rawError: { code: 50109, message: 'The request body contains invalid JSON.' },
code: 50109,
status: 400,
method: 'post',
url: 'https://discord.com/api/v9/channels/<channel_id>/messages',
requestBody: { files: null, json: undefined }
}
我已經嘗試過但無法通過此錯誤。
這是我正在運行的代碼。
const { REST } = require('@discordjs/rest');
const { Routes } = require('discord-api-types/v9');
const { channelId, token } = require('./config.json');
const rest = new REST({ version: '9' }).setToken(token);
let message = {username : "Moo", content : "this is a message from api"};
rest.post(Routes.channelMessages(channelId), {files : null , json : JSON.stringify(message), headers: {
"Content-Type": "application/json"} })
.then(() => console.log('message sent succesfully....'))
.catch(console.error);
您必須在RequestData
參數json
鍵更改為body
,並在RequestData
參數中傳入其他參數。
這部分代碼應該是這樣的。
// POST
rest.post(Routes.channelMessages(channelId), RequestData = { body : JSON.stringify(message) , headers: {
"Content-Type": "application/json"}, appendToFormData : true, passThroughBody : true })
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.