Как сгенерировать access_token из Flutter и отправить его на сервер узла? - PullRequest
0 голосов
/ 30 марта 2020

У меня есть сервер OAuth, написанный на Node.JS, они принимают access_token как запрос, а затем он генерирует JWT, и этот JWT используется для разблокировки ресурса с сервера. Вот мой Node.JS код с инструкциями в файле Readme. Ссылка: https://github.com/Rakshak1344/oAuth

  1. Необходимо сгенерировать access_token из флаттера.
  2. Отправить access_token на маршрут узла.

1 Ответ

0 голосов
/ 30 марта 2020

Подход 1:

Вы можете зарегистрировать пользователя в своем приложении, которое вызывает ваш API входа, написанный на NodeJS Сервере. В этом API вы можете генерировать токен и возвращать этот токен в ответе этой службы входа в систему.

В Flutter вы можете сохранить этот возвращенный токен в Shared Preferences и затем использовать этот сохраненный токен в каждой службе до срок действия этого токена истек, или пользователь вышел из системы.

Пример кода:

Future<String> Login(email, password) async {

    final url = "API_URL";
    var result = null;
    final prefs = await SharedPreferences.getInstance();
    var request = { "email": email, "password": password };
    var body = json.encode(request);
    var headers = {
      'Content-type': 'application/json',
      'Accept': 'application/json',
    };

    await http.post(url, body: body, headers: headers).then((response) {
      print("Response body: ${response.body}");
      if(response.statusCode == 200){
        var json = jsonDecode(response.body);
        prefs.setString('token', json['token']);
        result = response.body;
      }
      else{
        var json = jsonDecode(response.body);
        print(json['error']['message']);
        result = json['error']['message'];
      }
    });
    return result;
}

Подход 2:

Вы можете создать токен в Flutter, используя это пакет. Этот блог может помочь вам понять и выполнить свою работу.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...