Flutter et Auth0

Bonjour,

J’ai une API lumen/laravel. Pour la sécurisé j’ai utilisé auth0 (création d’un compte et de l’api).
Ceci me permet de générer un token valide pendant un certain temps pour mes tests avec postman.

Je souhaite maintenant créer l’application Flutter qui va afficher les données de l’API.
Comment faire sur Flutter pour récupérer l’access token ? J’ai créer l’application sur Auth0 et j’ai donc mon clientID, mon domain, mon client secret.

Voilà ma classe pour le moment (le token est en dur pour test)

class UserRepository {
  Future<List<User>> birthday() async {
    String token =
        'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InR2a...';
    const url =
        'http://localhost/api/v1/user/birthdayOfMonth';
    final response = await http.get(Uri.parse(url), headers: {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'Authorization': 'Bearer $token',
    });
    if (response.statusCode == 200) {
      return usersFromJson(response.body);
    } else {
      if (kDebugMode) {
        print('Error get birthday');
      }
      throw Exception();
    }
  }
}

J’ai trouvé l’explication.

static Future<Map<String, dynamic>> getApiAccessToken() async {
    String data =
        '{"client_id": "$AUTH0_CLIENT_ID","client_secret": "$AUTH0_CLIENT_SECRET","audience": "$AUTH0_API_AUDIENCE","grant_type":"client_credentials"}';

    try {
      final response = await http.post(
          Uri.parse('$AUTH0_DOMAIN/oauth/token'),
          headers: {
            'Content-Type': 'application/json',
          },
          body: data);
      return json.decode(response.body) as Map<String, dynamic>;
    } catch (e) {
      throw Exception();
    }
  }

Bonne journée,