gpt4 book ai didi

firebase - 弹出重定向上的 polymerfire-auth 错误 "auth/popup-closed-by-user"404

转载 作者:行者123 更新时间:2023-12-03 23:38:15 34 4
gpt4 key购买 nike

我基于 Polymer Starter Kit 创建了一个 Firebase 项目,并进行了一些修改以修复路由,但登录弹出窗口立即关闭并记录错误:

The popup has been closed by the user before finalizing the operation.

enter image description here

_authenticate 函数(在下面的代码中)被调用来验证用户。我能够在 Facebook 和 Google 控制台上正确设置它,所以我不确定错误的含义。

这是我的代码:

<dom-module id="my-app">
<template>

!-- Firebase Setup -->
<firebase-app auth-domain="foodhop-manage.firebaseapp.com"
database-url="https://foodhop-manage.firebaseio.com"
api-key="AIzaSyA-1TEbd1EhlkPwjGBLNS74h3c5FNCHNo0"></firebase-app>

<!-- Firebase Authentication -->
<firebase-auth id="auth"
user="{{user}}"
signed-in="{{signedIn}}"
on-error="handleError"></firebase-auth>

<!-- App Routing -->
<app-location route="{{route}}"></app-location>
<app-route
route="{{route}}"
pattern="/:page"
data="{{routeData}}"
tail="{{subroute}}"></app-route>

<!-- Scroll Position Control -->
<app-scrollpos-control id="scrollpos" selected="[[page]]" reset></app-scrollpos-control>

<!-- Application -->
<app-header-layout>
<app-header condenses reveals shadow>
<app-toolbar>
<div main-title style="text-align:center;font-size:40px;padding-top:20px" class="font-beautify">FoodHop</div>
</app-toolbar>
<app-toolbar sticky>
<div class="flex"></div>
<paper-tabs selected="[[page]]" attr-for-selected="name" class="self-end">
<paper-tab link name="about">
<a href="/about" class="link" tabindex="-1">About</a>
</paper-tab>
<paper-tab link name="register" hidden$="[[signedIn]]">
<a href="/register" class="link" tabindex="-1">Register</a>
</paper-tab>
<paper-tab link name="login">
<a href="/login" class="link" tabindex="-1">Login</a>
</paper-tab>
</paper-tabs>
<div class="flex"></div>
</app-toolbar>
</app-header>

<div>
<iron-pages selected="[[page]]"
attr-for-selected="name"
fallback-selection="404"
role="main">
<my-about name="about"></my-about>
<my-register name="register"></my-register>
<my-login name="login"
signed-in="[[signedIn]]"
user="[[user]]"></my-login>
</iron-pages>
</div>

<!-- Go to Console -->
<!-- <paper-fab icon="input"></paper-fab> -->
</app-header-layout>

<paper-toast id="toast"></paper-toast>
</template>

<script>
Polymer({
is: 'my-app',

properties: {
page: {
type: String,
reflectToAttribute: true,
observer: '_pageChanged'
},

user: {
type: Object,
observer: '_userChanged'
},

signedIn: {
type: Boolean,
observer: '_signedInChanged'
}
},

observers: [
'_routePageChanged(routeData.page)'
],

listeners: {
'register': '_register',
'authenticate': '_authenticate',
'logout': '_logout',
'showToast': 'showToast'
},

ready: function() {
this.$.auth.signOut();
},

toast: function(message) {
this.$.toast.text = message;
this.$.toast.show(message);
},

showToast: function(e) {
this.$.toast.show({
text: e.detail.message
});
},

_authenticate: function(e) {
var provider = e.detail.provider;
this.$.auth.signInWithPopup(provider)
.then(function(response) {
console.log('successful!', response);
}).catch(function(error){
console.log('oops!', error);
});
},

_userChanged: function(user) {
// console.log(user);
},

_signedInChanged: function(signIn) {
console.log(signIn);
if (signIn) {
this.page = 'login';
this.set('route.path', '/login');
this.toast('Sweet. Thanks for logging in!');
} else {
this.toast('Y U NO sign in?');
}
},

_logout: function() {
this.$.auth.signOut();
},

_register: function() {
this.page = 'register';
this.set('route.path', '/register');
},

_routePageChanged: function(page) {
this.page = page || 'about';
},

_pageChanged: function(page) {
// Load page import on demand. Show 404 page if fails
var resolvedPageUrl = this.resolveUrl('my-' + page + '.html');
this.importHref(resolvedPageUrl, null, this._showPage404, true);
},

_showPage404: function() {
this.page = '404';
},

handleError: function(e) {
console.log(e);
}
});
</script>
</dom-module>

最佳答案

在 Firebase 控制台的授权域中添加域。例如添加本地主机或 127.0.0.1。

虽然 Firefox 中的错误提示:

The popup has been closed by the user before finalizing the operation.

Chrome 提供了更具描述性的信息:

This domain (127.0.0.1) is not authorized to run this operation. Add it to the OAuth redirect domains list in the Firebase console -> Auth section -> Sign in method tab.

关于firebase - 弹出重定向上的 polymerfire-auth 错误 "auth/popup-closed-by-user"404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41527940/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com