使用JWT授权从express node.js下载文件

我在我的node.js服务器上使用express-jwt模块来授权用户访问不同的请求。 其中一个要求最终将是一个文件下载与快递res.download(文件)。

问题是我不能像通常通过AJAX(angular $ http.get)那样执行请求,因为这不会触发浏览器中所需的文件下载popup窗口。 虽然没有AJAX(window.open),我无法为express-jwt提供必要的授权标头。

任何提示如何使用express和jwt-express从node.js中获得授权文件的下载?

一个可能的解决scheme是修改你的服务器端,像以前一样在头文件中预期一些东西,但是如果没有这个头文件来查看请求的参数,看看你正在查找的值是不是在那里。 它不会改变您以前的其他端点的行为,但它会允许您下载带有window.open和url中的参数的文件。 您还可以将这种可能性限制在允许访问文件以获得更高安全性的端点上。