我在我的 node.js 服务器上使用 express-jwt 模块来授权用户访问不同的请求。其中一个请求最终将是使用 express res.download(file) 进行文件下载。
问题是我无法像通常通过 AJAX (angular $http.get) 那样执行请求,因为这不会在浏览器中触发所需的文件下载弹出窗口。尽管没有 AJAX (window.open),我无法为 express-jwt 提供必要的授权 header 。
关于如何使用 express 和 jwt-express 从 node.js 实现我的授权文件下载的任何提示?
最佳答案
一个可能的解决方案是修改您的服务器端以像以前一样在 header 中期望某些内容,但是如果没有此 header ,请查看请求的参数以查看您要查找的值是否不存在反而。它不会改变您之前对其他端点的行为,但它会允许您使用 window.open 和 url 中的参数下载文件。您还可以将这种可能性限制在允许访问文件的端点以提高安全性。
关于javascript - 使用 JWT 授权从 express node.js 下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27427507/