Satellizer 提供商在 Chrome 浏览器中登录,AngularJS

Satellizer providers login in Chrome browser, AngularJS

我的 Satellizer 和 Google Chrome 浏览器有问题。

起初,我认为我已经很好地实现和配置了所有授权提供程序,包括相应的 redirectUri 和专用于授权的 API url。

我的问题如下,它只发生在我 Google Chrome 并且是我打算使用 Facebook 或 Google 登录的 70% 的时间,我在控制台中出现以下错误:

Error: OAuth redirect has occurred but no query or hash parameters were > found. They were either set during the redirect, or were removed-typically by a routing library-before Satellizer could read it.

我还附上了提供者的配置:

$authProvider.facebook({
    clientId : 'myFabecookClientId(already defined)',
    responseType: 'token',
    name: 'facebook',
    url: 'endPoint auth/facebook del API del backend',
    authorizationEndpoint: 'https://www.facebook.com/v2.5/dialog  /oauth',
    redirectUri: window.location.origin +'/',
    requiredUrlParams: ['display', 'scope'],
    scope: ['email'],
    scopeDelimiter: ',',
    display: 'popup',
    oauthType: '2.0',
    popupOptions: { width: 580, height: 400 }
});

$authProvider.google({
    clientId: 'myGoogleClientId(already defined)',
    responseType : 'code',
    name: 'google',
    url : 'Endpoint auth/google del API del backend',
    authorizationEndpoint: 'https://accounts.google.com/o/oauth2/auth',
    redirectUri : window.location.origin + ','
});

我在远程服务器上有后端 运行,在本地有前端,因为它将工作分成两部分,以防它可能会影响某些事情。

这很好奇,因为例如在 Firefox 中授权我没有问题。

在远程 (public) 服务器而不是本地服务器上尝试 运行 前端。 Chrome 可能存在一些 CORS 问题