Asp.net Azure Blob是否需要文件扩展名?

Asp.net Azure Blob是否需要文件扩展名?,asp.net,asp.net-mvc,azure,azure-storage-blobs,Asp.net,Asp.net Mvc,Azure,Azure Storage Blobs,我正在使用Azure存储帐户将图像和文件存储为块Blob 只要设置了content-type属性,浏览器似乎就能够在没有扩展的情况下正确地为图像提供服务。例如,这将显示为普通图像: 出于任何原因,使用扩展名保存blob名称是否更好: 我选择不使用扩展名的原因是,我不需要数据库中的扩展名字段,我可以使用ID为图像提供服务。简单的答案是否。您不需要指定文件扩展名来为图像提供服务。这里的关键是内容类型应该正确设置。内容类型告诉浏览器如何为内容提供服务 即使您设置了扩展名,但未设置内容类型,在这种情况下

我正在使用Azure存储帐户将图像和文件存储为块Blob

只要设置了content-type属性,浏览器似乎就能够在没有扩展的情况下正确地为图像提供服务。例如,这将显示为普通图像:

出于任何原因,使用扩展名保存blob名称是否更好:


我选择不使用扩展名的原因是,我不需要数据库中的扩展名字段,我可以使用ID为图像提供服务。

简单的答案是否。您不需要指定文件扩展名来为图像提供服务。这里的关键是内容类型应该正确设置。内容类型告诉浏览器如何为内容提供服务

即使您设置了扩展名,但未设置内容类型,在这种情况下,某些浏览器也无法为内容提供服务。我看到很多问题,如果图像文件的内容类型设置不正确,Chrome会提示下载图像文件,而不是内联显示内容


我能想到的一个使用案例是,当您在本地计算机上下载这些文件时,文件扩展名将非常方便。根据文件扩展名,您的本地计算机将决定用于查看/编辑这些文件的应用程序。

简单的答案是否。您不需要指定文件扩展名来提供图像。这里的关键是内容类型应该正确设置。内容类型告诉浏览器如何为内容提供服务

即使您设置了扩展名,但未设置内容类型,在这种情况下,某些浏览器也无法为内容提供服务。我看到很多问题,如果图像文件的内容类型设置不正确,Chrome会提示下载图像文件,而不是内联显示内容


我能想到的一个使用案例是,当您在本地计算机上下载这些文件时,文件扩展名将非常方便。根据文件扩展名,您的本地计算机将决定用于查看/编辑这些文件的应用程序。

谢谢您的回复。我不确定浏览器是否真的像操作系统那样使用过这个扩展。不过,在用户下载文件时提供扩展名是一个好主意。我将添加一个字段来存储数据库中的扩展名,并为这些文件提供服务。我相信,当它们有用时,其他用例也会出现。@LloydChrismas(真的)响应很晚,但更合适的存储扩展的地方可能是blob的元数据感谢您的响应。我不确定浏览器是否真的像操作系统那样使用过这个扩展。不过,在用户下载文件时提供扩展名是一个好主意。我将添加一个字段来存储数据库中的扩展名,并为这些文件提供服务。我相信,当它们有用时,其他用例也会出现。@LloydChrismas(实际上)响应较晚,但存储扩展的更合适位置可能是blob的元数据