【问题标题】:Read Words from a PDF or DOC file in React or Firebase Cloud Functions在 React 或 Firebase Cloud Functions 中从 PDF 或 DOC 文件中读取单词
【发布时间】:2021-08-04 23:49:28
【问题描述】:

我有一个简单的 React 应用程序(没有后端服务器),托管在 Firebase 上。

应用程序接收一个文件(word 文档或 pdf)并将其存储在 firebase 存储中,并将元数据存储在 firestore 中。

我有要求读取文件中的字数,如果超过500,则阻止上传。

我一直在寻找一种仅使用 React 的方法,但我认为它无法完成。我的另一个选择是在 Firebase 中使用 Cloud Functions,它使用 NodeJs,即使这样我也没有找到任何解决方案。

此时,我无法设置合适的后端服务器来完成这项工作。

如果有人能指出正确的方向来解决这个问题,我将不胜感激。

谢谢。

【问题讨论】:

  • 您是否考虑过在云功能中使用 FS for node.js。我以前在节点环境中使用 FS 从文档中读取数据,但只能从计算机上的文档中读取数据。也许云功能会让您从数据库中“下载”文件并使用 FS(文件系统)作为节点来读取它。 w3schools.com/nodejs/nodejs_filesystem.asp
  • 这是个好建议,谢谢。但我不希望在我数单词之前将其上传到存储中。理想情况下,我想在存储之前计算字数,以便我可以发出通知说文档超出字数限制并要求用户缩短它。
  • 这是只读取元数据的节点办公文档阅读器(因此不需要整个文件)。也许你可以在你的前端代码上实现一些东西? npmjs.com/package/office-document-properties
  • 这个 npm 包看起来可能是解决方案。让我尝试实现它,看看它是否有效。非常感谢。
  • 您可以使用可调用函数将文件上传到函数的本地存储,使用 Vision API 处理文档并且如果可接受,然后将其保存到 GCS。 cloud.google.com/vision/docs/pdf

标签: node.js reactjs firebase file google-cloud-functions


【解决方案1】:

存在一些可以安装在 Cloud Functions 中的节点的 pdf 阅读器,因为大多数不支持浏览器。建议将pdf上传到存储以保存处理问题,只需将引用路径添加到Cloud Function payload并在完成后将其删除。

pdfreader 目前最适合 PDF 解析,但需要 Cloud Functions 等节点环境。 第二个问题是阅读需要 OCR 的基于图像的 pdf,提供链接。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-09
    • 2014-04-25
    • 2019-06-18
    • 2018-01-02
    • 2018-03-19
    • 2011-04-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多