JwtAuth 不在 Backpack Laravel 中生成令牌

时间:2021-03-16 08:57:31

标签: laravel jwt backpack-for-laravel

我正在使用背包 Laravel。虽然我也在使用 Backpack 自己的身份验证,但我需要为应用程序使用维护一个不同的客户表。对于客户表,我使用 JWTAuth 生成令牌,但每次生成令牌都失败。

public function register(Request $request)
{
    $checkEmail = Customer::where('email', $request->email)->first();
    
    if ($checkEmail) {
        $response = [
            'email_already_used' => true,
        ];
        return response()->json($response);
    }

    $payload = [
        'password' => \Hash::make($request->password),
        'email' => $request->email,
        'first_name' => $request->first_name,
        'last_name' => $request->last_name,
        'auth_token' => '',
    ];
   
    try {
        $user = new \App\Models\Customer($payload);
 
        if ($user->save()) {

            $token = self::getToken($request->email, $request->password); // generate user token
            
            if (!is_string($token)) {
                return response()->json(['success' => false, 'data' => 'Token generation failed'], 201);
            }
            $user = \App\Models\Customer::where('email', $request->email)->get()->first();
            $user->auth_token = $token; // update user token
            $user->save();
           
            $response = [
                'success' => true,
                'data' => [
                    'id' => $user->id,
                    'auth_token' => $token,
                    'first_name' => $user->first_name,
                    'last_name' => $user->last_name,
                    'email' => $user->email,                      
                ],
              
            ];
        } else {
            $response = ['success' => false, 'data' => 'Couldnt register user'];
        }
    } catch (\Throwable $e) {
        echo ($e);
        $response = ['success' => false, 'data' => 'Couldnt register user.'];
        return response()->json($response, 201);
    }
    return response()->json($response, 201);
}

我相信守卫可能有问题。 我需要在 app/config.php 中为此指定一些内容吗?

0 个答案:

没有答案
相关问题