我正在寻找使用静态生成器从json或csv文件生成多达数十万页(在S3上)的数据驱动内容,每个页面都有一个发布到外部API的html表单。这是一项可行的承诺吗?
答案 0 :(得分:3)
这取决于您的要求,但至少,您甚至可以使用fs
读取/写入的简单节点程序。提高复杂度范围,您可以使用Gulp设置。更进一步,您可以使用静态网站生成器来读取/写入您的数据文件(但是,只有当您已经知道静态生成器和/或您希望拥有博客在S3上,由.MD文件驱动,除了成千上万的数据驱动页面之外)。
如果进入简单节点脚本路由,您将在js文件中创建本地应用程序,通过命令行在节点中运行它。它会在本地生成数千页,然后您将它们上传到S3。您可以使用标准后备或使用promises的方式(如使用Bluebird)。这种方式是最手动的,但您可以最大程度地控制结果。
对于记录,您可以使用任何熟练的编程语言编写脚本,例如PHP。 JavaScript现在很流行,这就是为什么我假设你会使用JS。
如果进入Gulp路径,我想象一个自定义函数,reads来自该位置的数据文件,将其内容解析为数组,并将writes内容转换为文件。
如果要使用Hugo路线,只需使用data driven content参考,getCSV
功能即可。您仍然需要在网站的环境中工作,这意味着您越偏离网站的设置,您就越需要与Hugo战斗。< / p>
正如我所提到的,反对静态网站生成器的论据是,如果你不需要网站部分,只是对数据和写文件执行操作,它可能会阻碍。
Hugo是数千个文件的好选择,因为它很快。
解决方案还取决于您的CSV文件是否会发生变化,还是一次性的事情;你需要多少自动化。即使你去Hugo路线,Gulp方法也可能很方便。
所以,是的,这是一项非常可行的任务。