iTXTech / mirai-native

强大的 mirai 原生插件加载器
GNU Affero General Public License v3.0
371 stars 141 forks source link

发送不存在的URL图片时,整个消息都会被吞掉 #125

Closed Amazefcc233 closed 3 years ago

Amazefcc233 commented 3 years ago

描述这个Bug 发送不存在的URL图片时,整个消息都会被吞掉 (目前发现仅url图片会这样,发送本地图片不会有吞掉整条消息的问题)

复现步骤

期望的行为 去除无效的图片,发送文字及其他有效的url图片 大概就是这样:Snipaste_2021-02-01_16-04-17.pnghttps://i.loli.net/2021/02/01/TUIgbCLQ7dmDfyv.png ) 或返回一个负数值

截图和日志 演示代码:Snipaste_2021-02-01_15-36-20.pnghttps://i.loli.net/2021/02/01/iowM4FlnHJqBNUy.png ) 实际收到内容:Snipaste_2021-02-01_16-00-16.pnghttps://i.loli.net/2021/02/01/Tth4GJNsqWAZod5.png ) 后台日志:IMG_1945_20210201-160126_.JPEGhttps://i.loli.net/2021/02/01/iqhNIYUjJCl4B6Q.jpg

运行环境

PeratX commented 3 years ago

为什么不确保自己发送的图片是有效的呢?发送无效的图片确实应该被视为无效的消息并抛出异常。

Amazefcc233 commented 3 years ago

有时候会有类似于某些图床因为空间限制或者自动删除等策略抹除一些图片而不告知上传者的情况存在,没法确保自己发送的图片是有效的,而不发送剩余有效内容的话再加上没法得知消息是否发送成功,如果不看后台日志无法知道是mirai或自己写的插件故障还是只是有一张无效的url图片在消息里面

PeratX commented 3 years ago

发送前自行验证url就可以确保有效了,并且这样能提升用户体验。

Amazefcc233 commented 3 years ago

懂了,感谢大佬帮助