不支持redirect_uri:离子和卫星的facebook身份验证

时间:2015-11-05 03:53:03

标签: angularjs ionic satellizer

我在我的离子应用程序中使用satellizer库进行facebook身份验证。

在开发期间(在浏览器中完成)..将卫星fb对象配置为:

$authProvider.facebook({
  clientId: AppConstants.facebook.clientId,
  scope: 'user_friends',
  url: 'http://localhost:3000/auth/facebook'
});

这很好用。但是,当我在模拟器中运行应用程序时,我收到以下错误:

The redirect_uri is not supported

如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

问题在于,当您使用模拟器(或手机)时,默认的redirectUri变为file:///,这是Facebook不允许的。将其更改为类似http://localhost/的内容,并将其添加到Facebook开发者控制台中允许重定向uri。

默认配置: redirectUri: window.location.origin + '/'

更改为: redirectUri: 'http://localhost/'

因此,您的设置将如下所示:

$authProvider.facebook({
  clientId: AppConstants.facebook.clientId,
  scope: 'user_friends',
  url: 'http://localhost:3000/auth/facebook', 
  redirectUri: 'http://localhost/'
});