我一直在去Meteor。我想使用OAuth对我网站上的用户进行身份验证,因为我不想自己实现登录功能。
目前我的网站非常简单。一个计数器,您点击一个按钮,计数器增加一个。用户访问另一台计算机并记录其计数的想法是持久的。
我已按照meteor.com/accounts上的步骤进行操作。
meteor add accounts-twitter
和meteor add accounts-ui
{{> loginButtons}}
添加到HTML。meteor --port $IP:$PORT
abc-matthewcanty.c9.io/
http://0.0.0.0:8080/_oauth/twitter
- 我就是这样做的。API Key
和API Secret
现在当我点击使用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
答案 0 :(得分:5)
以下是使Twitter授权使用Meteor on Cloud9所需的步骤:
https://<workspace-name>-<username>.c9users.io
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