首页 > 解决方案 > 在节点js中从服务器存储和动态加载pdf文件

问题描述

我正在尝试创建一个显示 pdf 文件列表的应用程序,然后在新的浏览器选项卡/android 活动中加载 pdf 文件。

这个想法是用户将单击“讲座”按钮,然后将显示讲座列表,单击任何列表项将加载特定的 pdf 文件。

我目前有一个 node js mysql 后端,用于用户登录和路由到其他页面,然后是把手和 android 前端。

我正在努力了解如何存储 pdf 文件以便可以根据用户单击的内容调用它们,我想将 pdf 文件存储在服务器上而不是在我的应用程序中,然后在需要时调用它们。

我见过一种使用 ejs 视图引擎呈现公用文件夹中文件列表的方法,然后允许您执行此操作,但这需要在应用程序中存储 pdf,或者我可以使用我的虚拟主机托管文件,仍然需要数字了解如何根据用户操作加载它们。

将不胜感激任何方向或解决方案!

提前致谢

穆罕默德五世

标签: androidnode.jsandroid-studiopdfhandlebars.js

解决方案


在不知道您如何拥有数据库集的情况下,我将更多地讨论您将如何执行此操作,然后根据需要进行修改。在大多数情况下,您可能希望使用对象存储来存储 PDF 文件。这将允许访问任何应用程序。

  1. 您的数据库应包含 PDF 文件的文件名,例如,假设您的“文件”表就是这样

id、文件名、名称、扩展名、courceID

在这里,您将拥有文件名,可能是扩展类型和 refrenceID

  1. 接下来,在您的响应回调中,您只需返回对文件的查询,例如,假设您运行一个查询,例如 SELECT filename, name WHERE courceID = '12345'

然后你将它返回给视图,如果它是 ejs,那么你只需传递对象并执行类似的操作

<% for ( in in files ) {%>
<div><a href="url-to-object-store/<%-files[i].filename%>"><%-files[i].filename%>
<%}%>

推荐阅读