2014-12-23 108 views
4

我正在使用Generator Angular Fullstack制作我的第一个Web应用程序。 https://github.com/DaftMonk/generator-angular-fullstackAngularStack Facebook,Google +和Twitter身份验证

在初始化过程中我设定OAuth以下:Facebook的,Google +和Twitter

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

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

Facebook的:

Invalid App ID: id 

Google+的方式:

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. 

的Twitter:

Internal Server Error 

我没有做过多少除了通过教程到目前为止。但我觉得我错过了一些东西。对此主题的任何帮助将grea.t谢谢:)

回答

1

那么,首先你必须配置你的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', 

    ..... 
}; 
0

当部署到Heroku的不要忘记设置与HTTP/HTTPS前缀域配置变量在使用Google+的登录。

heroku config:set DOMAIN=http://<your app name>.herokuapp.com 

否则你会得到一个redirect_uri_mismatch。如果这与你可能需要启用内部服务器错误结束Google开发者控制台中的Google+ API。

0

如果你已经获得了你提供的ID和SECRET键,并且你仍然有OpenShift的困难,就像我做的那样......我发现为应用程序设置环境变量对我来说确实有窍门。

谷歌,例如:

RHC设置ENV -a GOOGLE_ID = RHC设置ENV -a GOODLE_SECRET =

在local.env.js出口为我工作得很好时,该模块我开发本地但没有当我推我的应用程序通过Grunt buildcontrol的OpenShift