流星帐户 - 推特无法开始工作

时间:2015-07-19 17:21:28

标签: twitter meteor oauth cloud9-ide meteor-accounts

我一直在去Meteor。我想使用OAuth对我网站上的用户进行身份验证,因为我不想自己实现登录功能。

目前我的网站非常简单。一个计数器,您点击一个按钮,计数器增加一个。用户访问另一台计算机并记录其计数的想法是持久的。

我已按照meteor.com/accounts上的步骤进行操作。

  1. meteor add accounts-twittermeteor add accounts-ui
  2. {{> loginButtons}}添加到HTML。
  3. 在Cloud9终端meteor --port $IP:$PORT
  4. 按照apps.twitter.com
  5. 上的屏幕说明进行操作
  6. 设置网站abc-matthewcanty.c9.io/
  7. 设置回调网址http://0.0.0.0:8080/_oauth/twitter - 我就是这样做的。
  8. 已在API KeyAPI Secret
  9. 中复制
  10. 选择基于弹出窗口的身份验证并按下保存
  11. 现在当我点击使用Twitter登录时,我会弹出一个说:

      

    此网页不可用

         

    ERR_ADDRESS_INVALID

    弹出窗口的地址如下:

      

    0.0.0.0:8080/_oauth/twitter/?requestTokenAndRedirect=true&state=eyJsb2dpblN ......

    注意使用abc-matthewcanty.c9.io/作为回调网址并没有区别。

    这是因为我使用的是Cloud9 IDE吗?我还需要做些什么修改?

    Meteor文档不提供进一步的步骤。可能假设OAuth的知识是先决条件,但并未说明这一点。

    修改

    我访问了以下@ tomas-hromnik建议的网站:

    http://www.servicepro.wiki/wiki/1171/cloud9-twitter-account-integration-for-sign-up

    并更新了apps.twitter.com中的应用设置:

    当我点击按钮时,我不知道如何阻止它转到 http://0.0.0.0:8080/etc

    Twitter OAuth naviating to 0.0.0.0

2 个答案:

答案 0 :(得分:5)

以下是使Twitter授权使用Meteor on Cloud9所需的步骤:

  • 确保您的申请是公开的,而不是私人的。您可以点击“分享”,然后选中“应用程序”旁边的“公开”。在您的Cloud9工作区中
  • 确保将Twitter回调设置为https://<workspace-name>-<username>.c9users.io
  • 由于Meteor twitter auth包默认使用0.0.0.0:8080(你启动它的IP:PORT)作为回调主机,所以你需要添加ROOT_URL环境变量。如果您正在使用Cloud9跑步者,则可以通过点击“环境”来添加环境变量。运行面板上的按钮并添加它。将ROOT_URL设置为应用程序的外部URL。否则,您可以在终端内输入:$ export ROOT_URL='https://<workspace-name>-<username>.c9users.io/'

注意:请注意,默认情况下,Meteor从端口3000开始,但您需要将端口设置为8080才能使其正常工作。

答案 1 :(得分:0)

我认为地址0.0.0.0:8080不正确。 Meteor默认在端口3000上运行,其地址为localhost,因此回调URL应为http://127.0.0.1:3000/_oauth/twitter?close

在本教程中,详细了解如何使用Meteor使用Twitter登录:http://meteor.hromnik.com/blog/login-with-facebook-twitter-and-google-in-meteor

编辑:对于生产用途,请使用您的生产网址:

http://abc.matthewcanty.c9.io/_oauth/twitter?close

以下是在Cloud9上创建Twitter帐户集成的步骤:http://www.servicepro.wiki/wiki/1171/cloud9-twitter-account-integration-for-sign-up