【问题标题】:Can I safely ignore these errors?我可以安全地忽略这些错误吗?
【发布时间】:2020-01-09 23:33:35
【问题描述】:
@client.event
async def on_message_edit(before, after):
    channel = client.get_channel (649024513614282764)
    embed=discord.Embed(title="Edited Message", description=f"Message sent by {before.author.mention} ({before.author}) in {before.channel.mention}", color=0xffff00, timestamp=datetime.datetime.now())
    embed.add_field(name=f"{before.content}", value=f"{after.content}", inline=False)
    if channel is None:
        print("Channel not found")
    else:
        await channel.send(embed=embed)

当我运行上述程序时,它按预期运行。然而它正在夹击

Exception has occurred: HTTPException
400 BAD REQUEST (error code: 50035): Invalid Form Body
In embed.fields.0.name: This field is required
In embed.fields.0.value: This field is required

我暂时忽略错误,因为它正在工作。这会导致进一步的问题吗?如果是这样,我该如何解决?谢谢。

【问题讨论】:

  • 正在编辑的消息有内容吗?你看到嵌入被发布了吗?
  • 嵌入消息显示内容没问题。它只是在控制台中显示错误@PatrickHaugh

标签: python python-3.x discord.py discord.py-rewrite


【解决方案1】:

没有发送您的嵌入,因为 before.contentafter.content 是空字符串。
因此,错误会告诉您这些字段是必需的。
有问题的消息可能来自机器人,并且只有一个嵌入。
在将字段添加到嵌入之前,您只需检查 before.contentafter.content 是否存在即可处理此问题。

【讨论】:

  • 发布before.contentafter.content 完全没有问题。唯一的问题是出现的错误,我暂时忽略它们,但从长远来看会导致问题吗?
  • 再次发生错误是因为您尝试发送带有空字段和值的嵌入。在编辑仅包含嵌入的消息时,当 before.contentafter.content 为空字符串时会发生这种情况。
猜你喜欢
  • 2017-04-14
  • 2021-07-24
  • 2014-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-26
  • 2011-07-12
相关资源
最近更新 更多