为什么ROOT_URL是捆绑部署所需的环境变量?

时间:2013-08-22 17:39:53

标签: meteor

我的Meteor应用程序服务于许多域名。应用程序的功能对于所有站点都是相同的,但主机名决定了我呈现的模板。

当我在生产中运行Meteor应用程序且ROOT_URL仅指向其中一个域时,一切正常。所以我想知道,为什么这是一个必需的环境变量而不是它在Meteor.absoluteUrl()中的使用? (我个人不会使用,虽然我知道它可以在引擎盖下的其他地方使用)

1 个答案:

答案 0 :(得分:4)

在生产环境中使用此功能是在OAuth回调期间。如果您通过Facebook / Twitter / Google或其他第三方登录,它将回拨您的域名,您的浏览器必须正确路由。

在OAuth中,所使用的域必须与给予另一方的域匹配以确保安全性。另一个是让OAuth登录提供商,比如facebook知道重定向到哪里。

所以这是通过ROOT_URL传递的。例如,登录时Facebook会重定向回Meteor.absoluteUrl('_oauth/facebook?close')