XMLHttpRequest只适用于特定的文件扩展名

JS: XMLHttpRequest only works on specific file extensions?

本文关键字:文件 扩展名 适用于 XMLHttpRequest      更新时间:2023-09-26

我正在做一个WebGL项目。我使用XMLHttpRequest来加载着色器(文本文件),JSON模型(文本文件)。当我对具有不寻常扩展名(如.vs或.json)的文件使用XMLHttpRequest时,将返回404状态。如果我重命名该文件以。txt或。html结尾,它将加载良好(状态200)。了解是什么限制了哪些文件被成功检索吗?

对不起,如果这是一个简单的问题,我是新的web开发。我一直无法在谷歌上找到答案。我使用IIS在本地提供服务。

我猜这与XMLHttpRequest无关。当你试图直接访问这些资源时,会发生什么,通过你的web浏览器的地址栏,或像cURL?

IIS上的默认安全配置很可能阻止提供"无法识别"的文件。您可能需要为它们注册MIME类型,或者禁用安全配置。

关于这个的一些细节可以在http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/44aa974e-ad27-4800-adfb-13c4ae39a602.mspx?mfr=true上找到。特别注意:

您还可以通过添加通配符(*)MIME类型。不要使用通配符mime类型生产服务器。这样做可能导致无法识别IIS服务文件和向用户显示敏感信息。通配符mime类型用于测试目的或在以下场景中Internet Server API (ISAPI)过滤器已经被专门开发出来为了处理这些通配符场景,例如,定制身份验证ISAPI。

如果您需要额外的帮助,请访问http://serverfault.com以获取有关配置IIS的详细信息。