2

I have model User and need create db seeder with faker lib, but i have record _token using JWT. Now how to create _token with JWT?

$factory->define(App\User::class, function (Faker\Generator $faker) {
    static $password;

    return [
        'firstName' => $faker->name,
        'lastName' => $faker->name,
        'username' => $faker->unique()->username,
        'email' => $faker->unique()->safeEmail,
        'password' => md5('user123'),
        'bio' => $faker->sentence(3, true),
        'type' => $faker->randomElement(['seller', 'buyer']),
        'birthday' => $faker->dateTimeThisCentury,
        'avatar' => $faker->imageUrl($width = 400, $height = 400),
        'cover' => $faker->imageUrl($width = 851, $height = 315),
        'gender' => $faker->randomElement(['male', 'female']),
        'country' => $faker->country,
        '_token' => JWTAuth::fromUser() // ???,

    ];
});
Nguyen Manh Linh
  • 689
  • 1
  • 6
  • 7

1 Answers1

1
  1. That's not how JWT works.
  2. How do you expect the library to generate a token for the user when the user itself hasn't been created? The token needs to have at least one claim to identify the user.
  3. JWT is meant to be used as a non persistent token. They're stored only when you want to blacklist or invalidate tokens.

What you're looking for might be a simple token based authentication and not JWT in this case.

Sandeesh
  • 11,486
  • 3
  • 31
  • 42