正如问题所指出的,有没有一种方法可以将docx文件转换为HTML文件,然后将其返回给用户而无需写入磁盘?我看到以下软件包:
https://www.npmjs.com/package/mammoth
尽管看起来它需要一个'path'变量才能直接从磁盘读取文件...
var mammoth = require("mammoth");
mammoth.convertToHtml({path: "path/to/document.docx"})
.then(function(result){
var html = result.value; // The generated HTML
var messages = result.messages; // Any messages, such as warnings during conversion
})
.done();
有某种方法可以从内存中的docx文件中读取文件,也可以将在app.post路由中上传的文件保存到变量中,然后将其传递给猛mm象或其他一些可以处理的库所以我永远不必写任何东西到磁盘上?
在mammoth
文档中,convertToHtml
函数的第一个参数是input
,其中input
是描述源文档的对象。在node.js上,他们支持{path: path}
和{buffer: buffer}
(或{arrayBuffer: arrayBuffer}
)。
您可以将上传的文件转换为缓冲区,然后将缓冲区推至convertToHtml
功能。