angularjs - AngularStack Facebook、Google+ 和 Twitter 身份验证

标签 angularjs authentication oauth yeoman-generator-angular

我正在使用 Generator Angular Fullstack 制作我的第一个 Web 应用程序。我在这里完成了项目初始化:https://github.com/DaftMonk/generator-angular-fullstack

在初始化期间,我为以下各项设置了 oAuth:Facebook、Google+、Twitter

我也在使用 Openshift,并在初始化项目后......我使用步骤将它添加到 openshift。这包括为 Facebook、Google+ 和 Twitter 身份验证的 RHC 设置环境变量。我也添加了这些。

但是,使用我的新应用程序...我无法在 Facebook、Google+ 或 Twitter 上创建新帐户。
当我创建新帐户时,这些是我得到的错误:

Facebook:

Invalid App ID: id

谷歌+:
401. That’s an error.

Error: invalid_client

The OAuth client was not found.

Request Details
  scope=https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email
  response_type=code
  redirect_uri=http://site.rhcloud.com/auth/google/callback
  client_id=id
That’s all we know.

推特:
Internal Server Error

到目前为止,除了完成教程之外,我还没有做太多事情。但我觉得我错过了一些东西。关于这个主题的任何帮助都会很棒。谢谢:)

最佳答案

好吧,首先您必须配置您的 clientIDs、clientSecrets 和 callBackURLs。您需要在每个 oAuth 提供商的开发者平台页面上找到这些信息。即对于 Facebook,这将是:https://developers.facebook.com/apps/

这些可以放在 local.env.js 文件中(包含一个示例,如下所示:

module.exports = {
  DOMAIN: 'http://localhost:9000',
  SESSION_SECRET: "xxxxxxxxxxxxx",

  FACEBOOK_ID: 'xxxxxxx',
  FACEBOOK_SECRET: 'xxxxxxx',

  TWITTER_ID: 'xxxxxxx',
  TWITTER_SECRET: 'xxxxxx',

  GOOGLE_ID: 'xxxxxxx',
  GOOGLE_SECRET: 'xxxxxxx',

  .....
};

关于angularjs - AngularStack Facebook、Google+ 和 Twitter 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27625685/

相关文章:

javascript - jQuery 悬停功能不适用于 ng-repeat Angular 对象

发布中的身份验证机制

javascript - 通过 Azure AD 身份验证进行单点登录 (SSO) 时出错 - AADSTS50059

php - 使用 oAuth 处理多个谷歌登录用户

oauth - 为什么要对 Authorization header 进行 base64 编码?

java - 使用 oAuth 验证 javascript 小部件

javascript - 如何在 AngularJS 上应用延迟

javascript - Socket.io 仅向当前用户发送

angularjs - 我应该如何确保访问后端呈现的前端路由的用户经过身份验证?

angularjs - AngularJS中模块之间的通信