Javascript 是否有关于浏览器做什么和不做什么的全面文档';不允许文件:方案URI?
如果可以避免,大多数人不会使用Javascript 是否有关于浏览器做什么和不做什么的全面文档';不允许文件:方案URI?,javascript,css,browser,file-uri,Javascript,Css,Browser,File Uri,如果可以避免,大多数人不会使用文件:URI,因为关于什么是允许的,什么是不允许的,有很多奇怪的规则,但有时这并不取决于你,你只需要支持从文件:URI加载HTML文件或应用程序 在这些时候,是否有关于浏览器允许和不允许file:uri的全面和最新的文档或指南?有很多信息,但都是零碎的。例如,解释了不能在Chrome中的文件:URI上加载ES模块,但可以在Firefox中加载。但是fetch()、WASM或其他现代web技术呢?也许它们不在文件:上工作,但确实支持数据:,如果您可以用正确的MIME类
文件:
URI,因为关于什么是允许的,什么是不允许的,有很多奇怪的规则,但有时这并不取决于你,你只需要支持从文件:
URI加载HTML文件或应用程序
在这些时候,是否有关于浏览器允许和不允许file:
uri的全面和最新的文档或指南?有很多信息,但都是零碎的。例如,解释了不能在Chrome中的文件:
URI上加载ES模块,但可以在Firefox中加载。但是fetch()
、WASM或其他现代web技术呢?也许它们不在文件:
上工作,但确实支持数据:
,如果您可以用正确的MIME类型构造一个
如果有一个指南列出了在所有浏览器中一致运行的方法,那么当您需要支持从本地
文件运行web应用程序时,这将非常有用,这样,如果您坚持使用这些技术,您的应用程序将能够工作。有人知道这样的事吗?我曾尝试搜索web和MDN,但没有找到任何内容,但这可能是因为大多数搜索引擎似乎忽略了文件中的冒号:
这里我发现了一个有趣的问题。他们基本上说:
Cr允许从文件//uri服务的HTML页面加载来自同一路径的图像和脚本,但是遗留边缘(V18)和Internet Explorer是唯一考虑所有本地PC文件://URI相同的浏览器,允许这样的页面引用本地计算机上的其他HTML资源。其他浏览器将文件源视为唯一的,阻止来自不同本地文件的帧之间的DOM交互等
基于此或:
它是UA特有的“留给读者作为练习”
用于:
文件://schemed URI不包含主机组件;请确保您的UI考虑了这种可能性
用于:
文件:主机特定的文件名
所以基本上,这是一个混乱,因为他们必须面对安全问题
其他资源:
我的建议是,file://
scheme对于静态页面很有用,可能需要一点javascript,但肯定没有AJAX-其他的,不要使用它。你可以用它做很多事情,特别是如果你可以在html文件本身内联包含所有内容的话。如果你必须参考其他文件,事情就会崩溃。您可以加载任何JS文件、引用CSS和图像(但不能以blob的形式获取它们的实际内容),但许多更新的东西似乎需要适当的MIME类型。也许文件:
十年前的网络技术会让你陷入困境,但如果你能确认以后的任何东西都能可靠地使用,那就太好了。