首页 > 解决方案 > 是否可以在 laravel 的单元测试中传递令牌来检查端点?传递令牌为空但检测到用户

问题描述

我想将令牌传递给标头以检查端点是否有效并达到 null

 $clientRepository = new ClientRepository();
    $client = $clientRepository->createPersonalAccessClient(
        null, 'Test Personal Access Client', 'http://localhost'
    );
    DB::table('oauth_personal_access_clients')->insert([
        'client_id' => $client->id,
        'created_at' => new DateTime,
        'updated_at' => new DateTime,
         
    ]);
    
    $token = $user->createToken('Personal Access Token')->accessToken;
   
    

    $headers = ['HTTP_AUTHORIZATION' => "Bearer $token"];
     
    $response = $client->request('POST','/api/client/check', $headers);
    dd($response);
    $response->assertStatus(200);

controller:

  public static function outdatedtoken($request){   

    dd($request->user()->token()); 
    if(Carbon::parse($request->user()->token()->expires_at) < Carbon::now()){
        return response()->json(['tokencaducado']);
    }
}

为空 $request->user()->token();

请一个解决方案

标签: laravelunit-testingauthenticationlaravel-passport

解决方案


推荐阅读