我想知道保持图像的扩展是否有好处(在客户端,因为在服务器端(linux),我没有看到好处,知道扩展并不重要)。
有<img src="/a" />
还是更好<img src="/a.jpg" />
?
那么,存储在带有扩展名的服务器图像中?
信息:图像是用户的照片。图像的名称很复杂。
我正在考虑保留扩展名,因为如果用户保存图像,他们就会有扩展名。
但是保持扩展对于开发来说有点复杂。不延期会不会有好处?
通常,扩展名是 Web 服务器确定文件的 MIME 类型的方式,这是浏览器如何知道它是图像而不是文本或任意二进制数据或其他内容的方式。
因此,通常,您只是出于这个原因想要保留扩展名。可能有一些不寻常的情况可能不是真的,但在典型的 Web 服务器中,直接从文件系统中提供文件,就是这种情况。
如果您不需要服务器端的扩展,因为无论扩展如何,您都发送正确的 MIME 类型,那么是的,唯一明显的优势是在用户想要保存图像并且浏览器或操作系统不可用的情况下不够聪明,无法在没有扩展名的情况下对图像做正确的事情。在这个时代,我不知道这种情况有多普遍,但它肯定不像以前那么普遍了。
就个人而言,如果它会使您的开发变得复杂,我不愿意担心它(特别是如果您发现您确实出于某种原因确实需要它时可以随时返回并执行此操作)。不过,我要考虑的是,如果保留文件扩展名是一个大难题,那么应用程序架构中是否需要改进。看起来这不应该是一个大问题。当然,我是在不知道你的具体情况的情况下这么说的;我只是笼统地说。
只要您发送正确的 MIME 类型,不使用扩展名应该没问题。如果需要,浏览器会自动添加扩展。(证明:你的 Gravatar 图片:http ://www.gravatar.com/avatar/f1f8a3382d2946bd526dd629eaa29b2b?s=32&d=identicon&r=PG )
基本上,只要 MIME 类型正确,您就可以使用任何扩展名。如果您使用扩展名静态地提供文件会更方便,因为大多数 Web 服务器使用基于扩展名的 MIME 类型猜测。从不使用扩展的数据库提供服务可能更方便......