我们有一个自定义构建的JIRA插件,该插件连接到我们的Web应用程序,以使用Firebase的JWT库链接用户。我们的应用程序使用PHP,因此我们使用的是Firebase PHP JWT库。
问题是JWT上下文的未定义属性。在JWT进行身份验证之后,我们将JWT上下文存储在名为jwt_context的类属性中(由$this->jwt_context
访问)。在该上下文中应该有一个附加上下文,但是它是空的。
其结果是导致我们之前的属性(用户,由$this->jwt_context->context->user
访问)未定义。
在out应用程序中没有代码表明jwt_context属性之后的context属性是自定义的,因此无法调试为什么它为空。
该加载项和Web应用程序都是由以前的开发人员构建的,他们没有留下任何文档,引人注目。
仅供参考-JWT库是使用composer加载的,因此我们也无法直接从那里调试。另外,我们正在将CodeIgniter用于我们的Web应用。
public function load_user(){
if($this->api && $this->jwt_context){
$user=$this->api->get('/rest/api/2/user?username='.$this->jwt_context->context->user->username);
if($user){
$this->user=$user;
return $this->user;
}
}
return false;
}
预期结果将是Jira应该显示的内容(例如自定义仪表板面板,自定义日志工作功能等)
我要解决的实际结果是:
“遇到PHP错误 严重程度:通知
消息:未定义的属性:stdClass :: $ user
文件名:libraries / Jira.php”