相关疑难解决方法(0)

MIME类型Web服务的文件扩展名?

是否有任何Web服务允许我提供文件扩展名,它会返回可能的MIME类型列表?

例如:

http://mimetype.com/getMime/doc
Run Code Online (Sandbox Code Playgroud)

哪个可以返回:

application/msword,application/docappl/text,application/vnd.msword,application/vnd.ms-word,application/winword,application/word,application/x-msw6,application/x-msword
Run Code Online (Sandbox Code Playgroud)

我不想使用Urlmon.dll,我宁愿不必保持自己的列表是最新的.

谢谢

language-agnostic file-extension web-services mime-types

11
推荐指数
3
解决办法
6718
查看次数

为什么Urlmon.dll中的FindMimeFromData函数会为许多文件类型返回MIME类型"application/octet-stream"?

为什么Urlmon.dll中的FindMimeFromData函数会为许多文件类型返回MIME类型"application/octet-stream",而通过文件扩展名(即针对Windows注册表)检查MIME类型会返回更精确的类型?

例如,mp3是"application/octet-stream"而不是"audio/mp3".

基本上,我想验证上传的文件扩展名不正确.这种方法似乎适用于许多图像文件,xml等.

问题与类似,但由于返回的MIME类型不同/不明确,所提供的解决方案不适合验证上传的文件.

.net c# mime mime-types

10
推荐指数
1
解决办法
1万
查看次数

urlmon.dll FindMimeFromData()在64位桌面/控制台上运行良好,但在ASP.NET上生成错误

我正在创建一个实用程序库,以便在Web环境中的桌面环境中使用.

它包含我认为在我的应用程序中经常重复的几个功能,包括通过其内容(而不是扩展名)获取文件的mime类型的实用程序.

我必须检查的文件是最常见的(jpg,png,pdf,txt)所以我选择使用外部方法FindMimeFromData(上面的链接)

使用.NET,如何根据文件签名而不是扩展名找到文件的mime类型

该方法运行良好,除了两个不正确的mime类型的JPG(image/pjpg)和PNG(image/x-png),通过在return语句之前进行检查很容易解决.

该库是为平台AnyCPU编译的,因为它必须以32位和64位安装在服务器/客户端上.

在桌面环境测试时,所有为x86和x64编译的应用程序都正常工作.

在测试ASP.NET应用程序(带有用于测试的http处理程序的空站点)时发生类型为HRESULT的错误,并且调试器告诉我它无法提供进一步的信息.

经过一些测试配置,包括将池的身份更改为本地系统(没有结果),我已经确定了问题:

池应该允许32位应用程序(见上图).

IisAllow32BitApplication

为什么?

它不应该加载urlmon.dll我们现在的64位系统的DLL ?

这是一个很大的问题,因为该FindMimeFromData方法可以被任何地方调用到这个库中:

结果是,另一个实用程序方法调用此方法可能会抛出此异常,并且很难通过调试来跟踪问题.

任何想法/经验?

用于测试的操作系统

桌面:

  1. Windows 8 x64 - 有效
  2. Windows 7 x64 - 有效
  3. Windows Server 2008 Standard R2 x64 - 有效
  4. Windows Server 2008 Standard x86 - 有效
  5. Windows Server 2003 Standard x86 - 有效
  6. Windows XP Professional SP3 - 有效

网址:

  1. Windows 8 x64 - 发现第一个错误,仅适用于启用32位应用程序
  2. Windows Server 2008 Standard R2 x64 - 确认错误,仅适用于启用32位应用程序 …

c# dllimport 32bit-64bit urlmon

10
推荐指数
1
解决办法
6446
查看次数

当我不知道内容类型时如何返回文件结果

我有一个asp.net mvc动作,它返回一个文件结果.在幕后,它只是从目录返回一个文件.FilePathResult需要内容类型,但我不知道.

如果我只有文件路径可用,那么返回文件结果的正确方法是什么?

asp.net-mvc

7
推荐指数
1
解决办法
5892
查看次数

.NET项目源代码文件的MIME类型是什么?

.NET项目中的.cs(C#source),.resx,.aspx等文件是否有官方MIME类型?

如果没有定义官方类型,那么关于良好MIME类型的任何建议?mod_dav_svn当从Web浏览器查看Subversion存储库时,这将通过Apache和模块公开,因此任何有助于Firefox 等人正确渲染文件的方法都可以解决问题.

svn content-type mod-dav-svn mime-types

6
推荐指数
1
解决办法
4316
查看次数

如何使用C#识别文件的扩展名/类型?

我有一个工作流程,允许用户上传任何文件,然后将读取该文件.

现在我的问题是,如果用户有图像文件xyz.jpg并且他只将其重命名为xyz(扩展名已移除),我们仍然可以使用/读取文件数据/元数据获取文件的类型/扩展名.

谢谢大家

c#

6
推荐指数
1
解决办法
4092
查看次数

如何在IIS上限制/验证文件上载文件类型服务器端

我想有一个文件类型的白名单,用户有权上传到我的IIS服务器(我使用IIS v7.5).

我有哪些选择?例如,要将控制器中的特定操作的文件大小限制为5MB,我将此部分添加到我的webconfig:

<location path="home/fileupload">
  <system.web>
    <!-- maxRequestLength is in kilobytes (KB) -->
    <httpRuntime maxRequestLength="5120" /> <!-- 5MB -->
  </system.web>
  <system.webServer>
    <security>
      <requestFiltering>
        <!-- maxAllowedContentLength is in bytes -->
        <requestLimits maxAllowedContentLength="5242880"/> <!-- 5MB -->
      </requestFiltering>
    </security>
  </system.webServer>
</location>
Run Code Online (Sandbox Code Playgroud)

webconfig中是否有一个选项来设置允许的文件类型的白名单?或者唯一的选择是在文件完全上传时验证代码中的文件类型?什么是推荐的技术?我怎么能确定.docx,.pdf,.jpg等真的是它们是什么?

asp.net iis asp.net-mvc file-upload asp.net-mvc-3

6
推荐指数
1
解决办法
9309
查看次数

替代Urlmon.dll中具有更多MIME类型的FindMimeFromData方法

通过Windows DLL可访问的FindMimeFromData方法Urlmon.dll能够确定存储在内存中的给定数据的MIME类型,考虑到存储此类数据的字节数组的前256个字节.

然而,在阅读了它的文档后,我在Windows Internet Explorer中引领了MIME类型检测,在那里我可以找到此方法能够识别的MIME类型.见清单.如您所见,此方法仅限于26种MIME类型.

所以我想知道是否有人能指出我有更多MIME类型的另一种方法,或者另外一种方法/类我可以包含我认为合适的MIME类型.

谢谢.

c# mime-types

6
推荐指数
1
解决办法
2万
查看次数

使用.net core 2.1 api检查文件格式签名

互联网上围绕这个问题有很多讨论。 示例 1 示例 2 但我没有找到 .net core 的任何答案地址。

那么, 有谁知道检查文件格式签名的正确方法,以防止用户上传伪装的文件?

.net .net-core asp.net-core asp.net-core-webapi

6
推荐指数
2
解决办法
5311
查看次数

如何确定文件类型?

我需要知道我的文件是否是音频文件:mp3,wav等...
如何做到这一点?

c# audio mp3 file

5
推荐指数
2
解决办法
2万
查看次数