Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/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
解码的含义是什么:无法在playframework 2.6.x中解码JWT?_Playframework - Fatal编程技术网

解码的含义是什么:无法在playframework 2.6.x中解码JWT?

解码的含义是什么:无法在playframework 2.6.x中解码JWT?,playframework,Playframework,我是PlayFramework新手,我正在尝试用Java实现一个非常基本的登录功能: session("connected",email); 检索: String user = session("connected"); 然而,尽管将iTen放入会话实际上是可行的(我打印到控制台)。当我尝试检索它时,它返回null,我有以下异常: [warn] p.a.m.DefaultJWTCookieDataCodec - decode: could not decode JWT: JWT signat

我是PlayFramework新手,我正在尝试用Java实现一个非常基本的登录功能:

session("connected",email);
检索:

String user = session("connected");
然而,尽管将iTen放入会话实际上是可行的(我打印到控制台)。当我尝试检索它时,它返回null,我有以下异常:

[warn] p.a.m.DefaultJWTCookieDataCodec - decode: could not decode JWT: JWT signature does not match locally computed signature. JWT validity cannot be asserted and should not be trusted.
io.jsonwebtoken.SignatureException: JWT signature does not match locally computed signature. JWT validity cannot be asserted and should not be trusted.
        at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:354)
        at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481)
        at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541)
        at play.api.mvc.JWTCookieDataCodec$JWTFormatter.parse(Cookie.scala:652)
        at play.api.mvc.JWTCookieDataCodec.decode(Cookie.scala:577)
        at play.api.mvc.JWTCookieDataCodec.decode$(Cookie.scala:569)
        at play.api.mvc.DefaultJWTCookieDataCodec.decode(Cookie.scala:742)
        at play.api.mvc.FallbackCookieDataCodec.decode(Cookie.scala:728)
        at play.api.mvc.FallbackCookieDataCodec.decode$(Cookie.scala:719)
        at play.api.mvc.DefaultSessionCookieBaker.decode(Session.scala:95)
这是什么原因

我的application.conf

application.secret="I70pMkPNKJ5o6eq<I7:X@DF?evtvUQd7HSCn>I7mPHTt6fL8]HsFdNq5;DfH0JAo"

db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:mem:play;MODE=PostgreSQL"

ebean.default=["models.*"] 

play.filters.enabled += "play.filters.headers.SecurityHeadersFilter"
play.filters.headers.contentSecurityPolicy = null

application.mode=dev
这也发生在我身上

这发生在我升级游戏框架和同时使用过滤器的时候

我所做的是

  • 从浏览器中删除所有cookie并重新启动

  • 重新启动服务器

  • 删除会话

    session().remove(XXX); 或 Http.Context.current().session().clear()


  • 然后它停止了。

    只需注册:我解决了降级到2.4的问题。不知何故,我认为Play 2.6的默认安全配置导致了问题。

    你能提供
    project/plugins.sbt
    的内容吗?@Salem sure!我更新了原始帖子。不幸的是,我的浏览器配置为私有模式,我总是在执行之间关闭浏览器并重新启动服务器。我正在努力解决这个问题。这非常令人沮丧,我正在考虑改回JSP/Struts:(您好,嗯,首先尝试删除会话以及Http.Context.current().session().clear();以及您之前设置的所有cookie。第1点(不要忘记重新启动浏览器)和第2点对我来说已经足够了。
    addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0")
    addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "5.1.0")
    addSbtPlugin("com.typesafe.sbt" % "sbt-play-ebean" % "4.0.2")