Molunerfinn / PicGo

:rocket:A simple & beautiful tool for pictures uploading built by vue-cli-electron-builder
https://molunerfinn.com/PicGo/
MIT License
24.25k stars 2.24k forks source link

[Bug]: picgo不支持上传没有文件拓展名的网络图片 #973

Closed Pil0tXia closed 2 years ago

Pil0tXia commented 2 years ago

前置阅读 | Pre-reading

PicGo的版本 | PicGo Version

2.3.1beta6

系统信息 | System Information

Windows

问题重现 | Bug reproduce

在typora中上传从QQ邮箱中复制用户发送的邮件内容时,邮件中的图片无法上传。typora报错如下: image

单独右键复制邮箱中的图片,剪贴板中是这个链接: https://mail.qq.com/cgi-bin/viewfile?f=526AC86DCD6216918F3C55D0856D9EAD2205154A3E2CBA3D27367EE18A6F11C66EC2B6B2C0030C73919C5A40DF532EBB6949B7C905BC4F18DFB1D8AE0A9EC1963A902A5FBA485FB4875D8524843A93E501C3A1F65E814F5639CA1D733F5104BF&mailid=ZL0716-TBWkrOWE7GVGQC1Ol6mcCc9&sid=86rAKWAg_3JXHHES&net=889192575

浏览器访问这个链接会下载一个无文件拓展名的文件,添加jpg后缀后可以被看图软件打开。 希望可以添加支持。

相关日志 | Logs

------Error Stack Begin------ Error: https://mail.qq.com/cgi-bin/viewfile?f=526AC86DCD6216918F3C55D0856D9EAD2205154A3E2CBA3D27367EE18A6F11C66EC2B6B2C0030C73919C5A40DF532EBB6949B7C905BC4F18DFB1D8AE0A9EC1963A902A5FBA485FB4875D8524843A93E501C3A1F65E814F5639CA1D733F5104BF&mailid=ZL0716-TBWkrOWE7GVGQC1Ol6mcCc9&sid=86rAKWAg_3JXHHES&net=889192575 is not image at C:\Users\18377\AppData\Local\Programs\PicGo\resources\app.asar\node_modules\picgo\dist\index.cjs.js:1:37907 at processTicksAndRejections (node:internal/process/task_queues:96:5) at async Promise.all (index 0) at async Object.handle (C:\Users\18377\AppData\Local\Programs\PicGo\resources\app.asar\node_modules\picgo\dist\index.cjs.js:1:36993) at async $e.doTransform (C:\Users\18377\AppData\Local\Programs\PicGo\resources\app.asar\node_modules\picgo\dist\index.cjs.js:1:16650) at async $e.start (C:\Users\18377\AppData\Local\Programs\PicGo\resources\app.asar\node_modules\picgo\dist\index.cjs.js:1:15887) at async yt.upload (C:\Users\18377\AppData\Local\Programs\PicGo\resources\app.asar\node_modules\picgo\dist\index.cjs.js:1:67044) at async Object.upload (C:\Users\18377\AppData\Local\Programs\PicGo\resources\app.asar\background.js:2:649330) at async An (C:\Users\18377\AppData\Local\Programs\PicGo\resources\app.asar\background.js:2:652212) at async C:\Users\18377\AppData\Local\Programs\PicGo\resources\app.asar\background.js:2:653301 -------Error Stack End------- 2022-09-17 14:18:39 [PicGo INFO] [PicGo Server] upload result
2022-09-17 14:18:39 [PicGo WARN] [PicGo Server] upload failed, see picgo.log for more detail ↑

Molunerfinn commented 2 years ago

这本来就不是一张可以直接访问的图片。picgo不支持这种图片上传。

你可以用chrome的隐私窗口打开这个链接试试就知道了,需要登录态的

Molunerfinn commented 2 years ago

picgo上传url类型图片不是依据后缀名而是依据返回的content-type。

Pil0tXia commented 2 years ago

好的谢谢。剪贴板复制图片或保存图片文件即可。

Molunerfinn commented 2 years ago

好的谢谢。剪贴板复制图片或保存图片文件即可。

嗯是的这种方式就可以

ole12138 commented 1 year ago

picgo上传url类型图片不是依据后缀名而是依据返回的content-type。

下面这样的图片(无mime后缀),隐私模式浏览器可以打开,response头的content-type: image/jpeg,但是picgo无法通过url上传。 https://img-blog.csdn.net/20180802084004605?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI5MzQ0NzU3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

去掉后面的参数,隐私模式也可以打开,response头的content-type: image/jpeg,但是picgo仍无法通过url上传。 https://img-blog.csdn.net/20180802084004605

Molunerfinn commented 1 year ago

img-blog.csdn.net/20180802084004605

picgo是通过response的content-type确认是否是图片的。另外你提供的这两张图片我都能上传。请检查自己是否版本问题以及插件不支持。

环境 picgo-2.3.1 + smms,你上述两张图片我直接用picgo的url上传如下:

https://s2.loli.net/2023/02/13/YGVQe8iH4OmdEUc.jpg

https://s2.loli.net/2023/02/13/y69slQFogv1tYHn.jpg