使用Telegram Bot API从DigitalOcean Spaces发送照片时出现电报错误BadRequest

时间:2020-09-03 10:06:59

标签: telegram digital-ocean telegram-bot

我的电报机器人在通过DigitalOcean Spaces CDN发送图片时遇到问题。 这里最令人沮丧的是,大多数图片发送时没有任何错误,但是某些特定的图像会导致Telegram Bot API产生BadRequest 400错误。

图像的格式和元数据完全相同,但是由于某种原因,Telegram拒绝加载其中的某些图像(即使我将URL发送到“损坏的”图像上,Telegram也不会显示预览)。

这里最不舒服的部分是,当我将.cdn子域添加到URL时,一些“损坏”的图片被接受,反之亦然-如果删除它,则带有.cdn子域的一些“损坏”的图片将被接受。 / p>

  • OK image(从我的设备发送时没有错误 显示个人帐户预览)

  • broken image(错误,从我的 个人帐户未显示预览。

  • magically cured broken image(无错误,显示预览,与以前相同,但URL中没有.cdn)

如果能解决此问题,我将不胜感激

1 个答案:

答案 0 :(得分:0)

事实证明,Telegram从照片URL缓存响应(成功和失败)。因此,如果某个URL由于某种原因返回了非200响应,则该响应将被缓存,并且所有后续重试以同一URL发送该图像都会失败。

This answer包含有关如何更新缓存的信息。