jpg图片转base64不能在线预览,查看文件真正格式

今天遇到上传文件之后预览不出来的问题,前端做了限制,只能上传'.pdf','.jpg','.jpeg','.png','.bmp','.pdf' 这几种格式的图片,前端限制也是从扩展名限制的,按理来说,传上去的(PDF单独做了处理)都可以进行预览,但是客户大大今天传了两张jpg却预览不了!神奇~研究了很久之后发现,文件扩展名竟然把代码骗了,,,,两张实际上是TIF格式扩展名却是jpg的“卧底”!

TIF是并不支持转换成base64的,所以预览就成了个裂开的小图片

下面不说解决,说下怎么看图片真正格式:

1. 去掉文件的扩展名(即使有提示也确定);
2. 用sublime打开(正常思路用记事本打开应该也能看见才对,但我的记事本打开之后是一堆乱码,不知道sublime对此是不是有什么处理),会出现一长篇各种数字字母组合,如图;

            jpg图片转base64不能在线预览,查看文件真正格式_第1张图片

3. 进行对比

JPEG (jpg),文件头:FFD8FF 
PNG (png),文件头:89504E47 
GIF (gif),文件头:47494638 
TIFF (tif),文件头:49492A00 
Windows Bitmap (bmp),文件头:424D

里面引用了博主唐诺的格式对比
原文链接:https://blog.csdn.net/zhijiandedaima/article/details/81506666

你可能感兴趣的:(CSS,HTML)