所以我有一个客户端在
python和后端
PHP. python客户端正在使用
pyjwt,PHP服务器正在使用
Firebase JWT.
当PHP中的令牌进行编码和解码时,一切正常.但是当我从python编码令牌并用PHP解码它们时,Firebase库返回一个错误:
Firebase\JWT\SignatureInvalidException Object ( [message:protected] => Signature verification Failed [string:Exception:private] => [code:protected] => 0 [file:protected] => /var/www/vendor/firebase/PHP-jwt/src/JWT.PHP [line:protected] => 110 ...
编码python代码如下
import jwt ... payload = {'sub': self.client.id,'exp': (datetime.Now() + timedelta(days=1)).timestamp()} context['token'] = jwt.encode(payload,os.environ['JWT_KEY'],algorithm='HS256')
$key = getenv("JWT_KEY"); return (array) \Firebase\JWT\JWT::decode($token,$key,array('HS256'));
好的,我发现问题.这个问题是不同方面所使用的秘密钥匙.关键在PHP尝试读取时出现问题,这就是为什么要创建不同的令牌.这些库是可以的,它们之间可以互相通信,没有任何问题.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。