我有一个显示徽标的Web应用程序。部分徽标将采用GIF格式。有些将采用JPEG格式。
我想标准化文件命名约定,以便我可以在给定公司主键的情况下找到徽标文件。例如“英国石油公司”的PK为1459,其徽标存储在/ Images / Logos / C1459
所以我的问题是:
文件扩展名是否重要?我可以保存文件,剥离.JPG或.GIF并期望所有浏览器能够识别和呈现文件吗?或者一些broswers依赖文件扩展名进行识别?
我在使用IE7的测试机器上试过这个并且它工作正常,但我不想假设所有其他浏览器的工作方式相同。
编辑: 跟进问题。如何让IIS确定无扩展名文件的MIME类型?
答案 0 :(得分:10)
对于浏览器而言,更重要的是在下载期间与文件一起传输的MIME类型 - 历史上,有些确实会回退到启发式文件,例如文件扩展名或尝试根据传输的字节进行计算,但如果MIME类型正确,没有必要。
答案 1 :(得分:2)
你肯定希望在尽可能多的浏览器中测试它,但它应该没问题。只要文件格式正确并且正确传送MIME类型,浏览器就应该快乐地显示图像。 (许多网站都会有以下网址的“图片”:/ images / dbimage.aspx?id = 123)
编辑:测试比不同的浏览器更重要,实际上是不同的图像类型。如果有任何图像类型没有使用正确的MIME类型发送,您将需要识别它们并解决它们或禁止它们。
答案 2 :(得分:0)
这对我来说似乎有些反过来。为什么不:
1)首次存储时,将所有图像转换为相同的类型?
或
2)使用通配符搜索搜索公司的图像(即匹配/Images/Logos/C1459.*)并加载返回肯定匹配的文件。当您使用主键时,您可以确信每个公司只能找到一个匹配项。