Flutter Firebase Google Auth 在生产环境中不起作用
Flutter Firebase Google Auth doesn't work in production
我正在尝试让我的 Flutter Web 应用程序与 Firebase Google Auth 一起使用。一切都在本地工作,但在生产服务器上(托管在 Firebase 上)我只得到以下无用的堆栈跟踪:
js_helper.dart:1111 Uncaught
b @ js_helper.dart:1111
[=11=] @ async_patch.dart:710
auu @ schedule_microtask.dart:40
auO @ schedule_microtask.dart:49
@ async_patch.dart:49
awf @ js_helper.dart:1807
(anonymous) @ js_helper.dart:1839
childList (async)
@ async_patch.dart:62
ail @ async_patch.dart:27
a8H @ zone.dart:1495
ii @ zone.dart:1707
pJ @ future_impl.dart:665
el @ future_impl.dart:50
nS @ future_impl.dart:33
hN @ future_impl.dart:21
@ google_sign_in_web.dart:111
ar8 @ js_helper.dart:836
afa @ core_patch.dart:84
atA @ js_patch.dart:542
(anonymous) @ js_patch.dart:520
e.Zn @ cb=gapi.loaded_0:231
gk @ cb=gapi.loaded_0:234
bk @ cb=gapi.loaded_0:234
_.Mj.Vt @ cb=gapi.loaded_0:233
Kj @ cb=gapi.loaded_0:226
Promise.then (async)
Fj @ cb=gapi.loaded_0:226
_.Jj @ cb=gapi.loaded_0:226
ck @ cb=gapi.loaded_0:233
Lj @ cb=gapi.loaded_0:232
(anonymous) @ cb=gapi.loaded_0:227
(anonymous) @ cb=gapi.loaded_0:352
$u.dispatchEvent @ cb=gapi.loaded_0:262
_.Wv.Pv @ cb=gapi.loaded_0:297
(anonymous) @ cb=gapi.loaded_0:289
_.h.LY @ cb=gapi.loaded_0:284
(anonymous) @ cb=gapi.loaded_0:286
这是一个全新的项目,具有最新的 Flutter / Firebase 依赖项。我的索引 html 看起来像这样:
...
<head>
<meta name="google-signin-client_id" content="myActualId.apps.googleusercontent.com">
</head>
<body>
<script src="https://www.gstatic.com/firebasejs/8.6.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.6.1/firebase-auth.js"></script>
我还在 Firebase 控制台的“授权域”下的“登录方法”中添加了我正在使用的域。我该怎么做才能调试这个问题?
事实证明,Firefox 更擅长报告此问题。与 Chrome 控制台相比,Firefox 控制台产生了一条很好的错误消息(不幸的是我没有复制确切的消息),告诉我客户端 ID 没有在 Google 云服务中注册。 Firebase 控制台(注册 ID 的位置)和 Google Cloud Console(未注册 ID 的位置)之间一定存在同步问题。
我正在尝试让我的 Flutter Web 应用程序与 Firebase Google Auth 一起使用。一切都在本地工作,但在生产服务器上(托管在 Firebase 上)我只得到以下无用的堆栈跟踪:
js_helper.dart:1111 Uncaught
b @ js_helper.dart:1111
[=11=] @ async_patch.dart:710
auu @ schedule_microtask.dart:40
auO @ schedule_microtask.dart:49
@ async_patch.dart:49
awf @ js_helper.dart:1807
(anonymous) @ js_helper.dart:1839
childList (async)
@ async_patch.dart:62
ail @ async_patch.dart:27
a8H @ zone.dart:1495
ii @ zone.dart:1707
pJ @ future_impl.dart:665
el @ future_impl.dart:50
nS @ future_impl.dart:33
hN @ future_impl.dart:21
@ google_sign_in_web.dart:111
ar8 @ js_helper.dart:836
afa @ core_patch.dart:84
atA @ js_patch.dart:542
(anonymous) @ js_patch.dart:520
e.Zn @ cb=gapi.loaded_0:231
gk @ cb=gapi.loaded_0:234
bk @ cb=gapi.loaded_0:234
_.Mj.Vt @ cb=gapi.loaded_0:233
Kj @ cb=gapi.loaded_0:226
Promise.then (async)
Fj @ cb=gapi.loaded_0:226
_.Jj @ cb=gapi.loaded_0:226
ck @ cb=gapi.loaded_0:233
Lj @ cb=gapi.loaded_0:232
(anonymous) @ cb=gapi.loaded_0:227
(anonymous) @ cb=gapi.loaded_0:352
$u.dispatchEvent @ cb=gapi.loaded_0:262
_.Wv.Pv @ cb=gapi.loaded_0:297
(anonymous) @ cb=gapi.loaded_0:289
_.h.LY @ cb=gapi.loaded_0:284
(anonymous) @ cb=gapi.loaded_0:286
这是一个全新的项目,具有最新的 Flutter / Firebase 依赖项。我的索引 html 看起来像这样:
...
<head>
<meta name="google-signin-client_id" content="myActualId.apps.googleusercontent.com">
</head>
<body>
<script src="https://www.gstatic.com/firebasejs/8.6.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.6.1/firebase-auth.js"></script>
我还在 Firebase 控制台的“授权域”下的“登录方法”中添加了我正在使用的域。我该怎么做才能调试这个问题?
事实证明,Firefox 更擅长报告此问题。与 Chrome 控制台相比,Firefox 控制台产生了一条很好的错误消息(不幸的是我没有复制确切的消息),告诉我客户端 ID 没有在 Google 云服务中注册。 Firebase 控制台(注册 ID 的位置)和 Google Cloud Console(未注册 ID 的位置)之间一定存在同步问题。