Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Heroku &引用;“没有可用的验证密钥”;试图从JWT Gem保护的API获取用户时_Heroku_Jwt_Ruby On Rails 6 - Fatal编程技术网

Heroku &引用;“没有可用的验证密钥”;试图从JWT Gem保护的API获取用户时

Heroku &引用;“没有可用的验证密钥”;试图从JWT Gem保护的API获取用户时,heroku,jwt,ruby-on-rails-6,Heroku,Jwt,Ruby On Rails 6,我已经将jwt gem添加到gem文件中。我可以成功执行登录请求,并收到授权令牌。 然后,我使用授权令牌返回用户对象。 这在开发中效果很好 但是,在生产中,我无法使用授权令牌获取用户对象。 我收到消息:没有可用的验证密钥 我的搜索让我找到了,但这是为Desive jwt设计的 我也遇到过,但没什么帮助 来自heroku logs--tail--app stag的信息并没有真正的帮助 2020-11-25T20:15:30.493583+00:00 app[web.1]: I, [2020-11-

我已经将jwt gem添加到gem文件中。我可以成功执行登录请求,并收到授权令牌。 然后,我使用授权令牌返回用户对象。 这在开发中效果很好

但是,在生产中,我无法使用授权令牌获取用户对象。 我收到消息:没有可用的验证密钥

我的搜索让我找到了,但这是为Desive jwt设计的 我也遇到过,但没什么帮助

来自heroku logs--tail--app stag的信息并没有真正的帮助

2020-11-25T20:15:30.493583+00:00 app[web.1]: I, [2020-11-25T20:15:30.493522 #4]  INFO -- : [398a1a9c-fae2-454a-b991-5a922a679103] [active_model_serializers] Rendered ActiveModel::Serializer::Null with Hash (0.07ms)
2020-11-25T20:15:30.493805+00:00 app[web.1]: I, [2020-11-25T20:15:30.493736 #4]  INFO -- : [398a1a9c-fae2-454a-b991-5h922a679973] Completed 422 Unprocessable Entity in 1ms (Views: 0.5ms | Allocations: 1356)

在此方面的任何帮助都将不胜感激。最后,我为我的案例找到了解决方案。我不知道这对你是否有用,以下是我所做的:

首先,我使用了
Rails.application.secrets.secret\u key\u base
作为JWT的密钥,在阅读了一些关于同一问题的其他帖子后,使用
design JWT
我说,也许Rails secrets中的这个属性在Heroku中返回零,所以我决定创建自己的密钥,我所做的就是,我只是使用了一个名为secret_key的环境变量,然后引用它,我应该在JWT中使用它


希望这有帮助。

我也有同样的问题,我一整天都在为这个问题苦苦挣扎,希望有人能给我们一些线索。是的,这是当时的解决方案。我忘记回答我的问题了。谢谢你!