javascript - 内联外部 HTML 资源
问题描述
我想知道是否有一个现有的(Linux)工具/命令可以通过自动内联第三方资源(JS 和 CSS)来使 HTML 文件更加“独立”。
我正在使用生成 HTML 报告的工具,这些报告包含对第三方 CSS (Bootstrap) 和 JS (jQuery) 的引用。file://
由于安全限制,如果通过 访问页面,这些资源将不起作用。它们在从 HTTP 服务器提供服务时工作,但当文件位于机器本地时,这显然不理想。
到目前为止,我已经创建了一个脚本来使用它们内容的数据 URI 来查找/替换这些特定的 URL。这目前有效,但由于所有内容都是硬编码的,因此会带来维护负担。
有没有更可靠/标准的方法来达到类似的效果?我可以想到几种方法来做到这一点:创建数据 URI(如我的脚本),将内容写入样式/脚本元素,或将 URL 替换为本地副本的相对路径。这些中的任何一个都可以。理想情况下,我可以做类似的事情:
$ inlineHtmlResources < existingFile.html > standloneVersion.html
解决方案
The answer from @WillCain was helpful, but as a plugin for a plugin for a system I've never used (webpack) it seemed a little overkill for me.
I ended up writing a simple Python script to do it instead http://chriswarbo.net/git/html-inliner/git
推荐阅读
- python - 带有 method='linear' 和 'nearest' 的 Pandas.DataFrame interpolate() 为尾随 NaN 返回不一致的结果
- java - 为执行器端点定义不同上下文的正确/最干净的方法是什么?
- html - 用图案填充 SVG 路径而不拉伸
- asp.net-core - 在 Aspnet Core 2.1 Azure App Service 中长时间运行导出到 excel 作业
- data-structures - 在球形树上吠叫还是去别处看?
- sql - CAST CASE 语句超出限制
- dataframe - Giving a custom name for a column in dataframe, Julia
- arrays - 对基于结构的数组进行排序
- mysql - 从另一个表的数据更新一个表的所有列?
- python - ArcGIS 10.5 python 脚本集成到“脚本/工具”不输出数据