Closed shigma closed 4 years ago
由于http的协议繁杂,cqhttp必然无法完全适配所有的情况(比如说带特殊header的),因而,不能用就不能用了 √ (个人理解)
这点也是醋Q本体不提供http功能的原因。
哦 是自己的服务器啊。。。那当我啥都没说过。
看看酷Q的 data/image
里面有没有 .tmp
后缀的文件?
@richardchien 并没有。
我之前是清空了 data/image 文件夹。但是再次尝试发送上述消息后仍然没有生成 .tmp 文件(貌似也没有生成相关的 .tmp.cqimg)。
再顺便一提刚刚试了利用 base64 发送图片仍然是可以的。
那就是 CQHTTP 没下载成功吧,试试在容器里拿 curl 下载看看?
之前没找机会尝试,不过现在好像自然就好了。在此期间完全没有动过 CoolQ,CQHTTP 和我的代码中的任何一个。就很迷惑……
那应该就是网络问题
自己写的插件中,会根据收到的增强 CQ 图片码中的 url 字段将图片下载并上传到自己的静态图片服务器后,再将原 CQ 码中的 file 字段改成服务器的永久链接发送,确保图片不会丢失,并且能在多个号之间使用。但是今天突然发现了图片上传后无法发送的情况。该图片链接本身是可以访问的。报错信息:
同时我尝试了之前已经上传的其他图片,将它们作为 CQ 码的 file 字段发送是正常的。这应该是之前的图片已经有了缓存的原因。为了验证这个结论,我清除了相关 QQ 的 data/image 文件夹,之后发现过去已经上传的其他图片链接也失效了。报错原因也是“文件名不合法,无法发送”。