【问题标题】:I uploaded my frontend and backend app to Heroku but I cannot use jwt()我将前端和后端应用程序上传到 Heroku,但无法使用 jwt()
【发布时间】:2019-11-01 16:11:26
【问题描述】:

我将我的 nodejs 后端和 angular 前端项目上传到 heroku,为了让它工作,我不得不删除 app.use(jwt());为了使部署工作。问题是我希望在应用程序中使用 jwt。删除后,我收到以下消息

 {"message":"Invalid Token"} 

我认为这是因为后端要求静态文件具有 jwt 令牌。如何在不破坏 heroku 上的应用程序的情况下添加 jwt。代码可以在这里找到 app with combined frontend and backend not deploying to Heroku

该代码的唯一区别是我在注释中添加了 get 路由并注释掉了 app.use(jwt());

【问题讨论】:

  • 在部署中使用 app.use(jwt()) 时的错误消息是什么?您使用的是什么版本的 node、express、angular、jwt 包等?可能是过时的软件包,在这种情况下,您需要更新到当前版本。这可能是由于已实现的高安全漏洞造成的。
  • @pbordeaux 我没有收到错误,我收到以下消息 {"message":"Invalid Token"}。我认为它拒绝了前端访问,因为它没有 jwt 而不是导航到登录屏幕。 node 版本 v10.9.0,npm 版本 6.9.0,Express 版本 4.17.0,jwt 版本 5.3.1,angular 版本 7.3.7。
  • 好久没做express/node了,是不是没有指定失败重定向?似乎在包含身份验证之前没有提供您的应用程序,可能吗?抱歉,我对此有点不习惯

标签: node.js angular heroku express-jwt jwt-auth


【解决方案1】:

通过添加 app.use(express.static(__dirname + '/dist/app-name')); 解决了这个问题在 app.use(jwt());

之前

【讨论】:

    猜你喜欢
    • 2020-11-16
    • 2020-10-19
    • 1970-01-01
    • 2021-11-23
    • 2022-11-20
    • 2019-10-31
    • 2020-03-13
    • 1970-01-01
    • 2021-11-23
    相关资源
    最近更新 更多