【发布时间】:2017-06-02 06:58:18
【问题描述】:
我正在使用 jsmodeler (https://github.com/kovacsv/JSModeler) 在我的网站上显示 3d 模型。用户选择文件的唯一选项是通过文件选择器并将文件的路径放在 url 中(即http://localhost:3000/ModelView#https://cdn.rawgit.com/kovacsv/Online3DViewer/9e9ca71d/website/testfiles/cube.3ds)。我想通过我的节点 js 服务器发送一个文件,然后将文件加载到查看器中。
我想我需要将我提供的文件的路径放入 url 并刷新页面?但是我如何获得这条路径?它应该只对一个用户可用,所以我不能把它放在公用文件夹中!
说我用
发送res.sendFile(myFile)
这不会发送文件的路径对吗?我也担心即使我得到了路径,当我在新的 url 刷新页面时,该文件将不再存在。
更新: 所以我想当模型保存在我的服务器上时,我会将它保存在公共文件夹中,但是在一个随机数下,即“path/1982746/model.obj”。这样一来,任何人都无法将模型输入 url。这是安全的,还是有人可以轻松查看所有公开的文件?
【问题讨论】:
-
您使用的是 Passport 还是任何其他身份验证中间件?是否要将文件提供给所有登录用户?
-
@Tom 我正在通过乏味的方式使用 Azure AD 身份验证。我不想将文件提供给所有登录用户,但我认为这是唯一的方法。
标签: javascript node.js express path static-files