googleapis_auth: clientViaUserConsent немедленно возвращается с ошибкой idpiframe_initialization_failed - PullRequest
0 голосов
/ 29 апреля 2020

Я работаю над веб-приложением Flutter для доступа к своим почтовым сообщениям Google (это мои первые приложения Flutter).
API, которые я использую:

googleapis: ^0.54.0
googleapis_auth: ^0.2.11+1
http: ^0.12.0+4

Когда я использую clientViaUserConsent , появляется iframe для входа в Google, но без задержек функция выдает UserConsentError с сообщением «Не удалось получить согласие пользователя: idpiframe_initialization_failed.». Я попробовал несколько советов, таких как создание нового client_id, очистка кэшей и файлов cookie, но всегда получал одинаковые результаты.
Я потратил два дня на эту проблему, но не вижу, где что-то пропустил.
Есть идеи, где мне искать?
Спасибо.

Ниже моего кода:

try {
  BrowserOAuth2Flow flow = await createImplicitBrowserFlow(id, _SCOPES);
  AuthClient http_client;
  try {
    http_client = await flow.clientViaUserConsent(immediate: false);
    this._client = GmailApi(http_client);
    //flow.close();
    return _makeResponse(MailNavigatorModelResponse.ok);
  } catch (er1) {
    mailLog.fine(
        "[${mailLog.name}] connect Google : failure ${er1.toString()} ");
    // flow.close();
    return _makeResponse(MailNavigatorModelResponse.ko,
        msg: er1.toString());
  }
} catch (e) {
  mailLog.fine(
      "[${mailLog.name}] auth Google : failure ${e.toString()} / ${e.runtimeType}");
  return _makeResponse(MailNavigatorModelResponse.ko, msg: e.toString());
}
...