【发布时间】:2020-11-11 08:15:49
【问题描述】:
我正在使用 c# 和一个名为 DSharpPlus 的库制作一个不和谐机器人(如果这有帮助的话),我正在尝试制作一个清除命令,但我一直收到一个
错误请求:400
错误,我不知道如何解决。我已经尝试在网上寻找它,但找不到任何东西,而且我对 C# 也有点陌生,并且已经在这方面做了很多事情,以至于我不能回去了。这是我的代码:
[Command("purge")]
[Description("Deleted A Certain Number Of Messages. (Max = 1000)")]
[RequireBotPermissions(Permissions.Administrator)]
[RequireUserPermissions(Permissions.Administrator)]
public async Task Purge(CommandContext ctx, [Description("Number Of Messages To Be Deleted.")]int num)
{
int limit = 1000;
if (num > limit)
await ctx.Channel.SendMessageAsync("Too Many Arguments. Limit: 1000").ConfigureAwait(false);
await ctx.Message.DeleteAsync().ConfigureAwait(false);
var messages = await ctx.Channel.GetMessagesAsync(num).ConfigureAwait(false);
await ctx.Channel.DeleteMessagesAsync(messages).ConfigureAwait(false);
var embed = new DiscordEmbedBuilder
{
Title = $"{num} Messages Deleted!",
Color = DiscordColor.Aquamarine
};
var deletedMessage = await ctx.Channel.SendMessageAsync(embed: embed).ConfigureAwait(false);
Thread.Sleep(4300);
await ctx.Channel.DeleteMessageAsync(deletedMessage).ConfigureAwait(false);
}
如果它看起来很糟糕,那么我还是 C# 的新手,所以我知道的不多。请帮助,因为我已经尝试了很多次,所以我现在只需要寻求帮助。谢谢!
编辑:基本上命令剂量确实有效,但它给了我Bad Request: 400 的错误,我真的不知道为什么。
如果这也有帮助,这就是我不断得到的:
Nitro7256 尝试执行 'purge' 但出错:DSharpPlus.Exceptions.BadRequestException: Bad request: 400
【问题讨论】:
-
A 400 Bad Request 是 HTTP 响应代码,而不是 .NET 异常。从您的代码中不清楚您是否/在哪里发出 HTTP 请求,因此请在您的问题中澄清这一点。此外,响应代码指示格式错误的请求,请确保您遵循所调用 API 的任何 API 文档。