首页 > 解决方案 > laravel 8 JWT ErrorException:试图获取非对象的属性“id”

问题描述

当我更新当前用户的配置文件时,我收到以下错误“尝试获取非对象的属性'id'”,错误显然在这一行:$tokenId = response()->json(auth()- >user()->id) 的以下内容:

 public function update(Request $request)
{
    $tokenId =  auth()->user()->id; 
    $user =Pro::find($tokenId);
    $user->nom            = $request->nom         ;
    $user->email          = $request->email       ;
    $user->telephone      = $request->telephone   ;
    $user->SIERT          = $request->SIERT       ;
    $user->NomSociete     = $request->NomSociete  ;
    $user->catActivite    = $request->catActivite ;
    $user->Adresse        = $request->Adresse     ;
    $user->codePostal     = $request->codePostal  ;
    $result= $profil->save();
    if($result){
        return ["result"=>"Profile has been updated"];
     }
     else {
        return ["result"=>"Profile Not has been updated"];
     }
}

只是我想用 get if from token 来更新当前用户的个人资料,我尝试了很多解决方案但它没有用,我也有这个功能只是为了从具有相同结构的 token 中获取 id 并且它工作得很好:

 public function userProfile() {
    return response()->json(auth()->user()->id);
}

标签: jwtlaravel-8

解决方案


推荐阅读