Meteor ROOT_URL变量导致iOS/Android部署上出现白屏或facebook帐户重定向问题
我面临着一个非常复杂的情况,即使用Meteor ROOT_URL变量导致iOS/Android部署上出现白屏或facebook帐户重定向问题,meteor,reactjs,facebook-login,meteor-up,kadira,Meteor,Reactjs,Facebook Login,Meteor Up,Kadira,我面临着一个非常复杂的情况,即使用Meteor和ROOT\u URL环境变量 我正在使用Facebook登录React开发meteor-1.2.1应用程序。在应用程序代码中设置ROOT_URL全局变量时,它在本地开发以及meteor run ios/android上都能很好地工作 然后,我用mupx将应用程序部署到Digital Ocean server,并用meteor build./build--server为iOS和Android构建应用程序=http://xxxxxx.com指向数字海洋
Meteor
和ROOT\u URL
环境变量
我正在使用Facebook登录React开发meteor-1.2.1应用程序。在应用程序代码中设置ROOT_URL全局变量时,它在本地开发以及meteor run ios/android上都能很好地工作
然后,我用mupx
将应用程序部署到Digital Ocean server,并用meteor build./build--server为iOS和Android构建应用程序=http://xxxxxx.com
指向数字海洋服务器。它在web浏览器中运行良好,但在通过iTunes或AppStore将我的应用程序安装到iOS后,该应用程序在启动屏幕后立即出现白色屏幕,但仅在首次启动时出现。同样,这种情况只在应用程序安装后发生一次。如果我关闭应用程序并再次打开,它将正确加载并继续正常工作。同样的情况也发生在Android设备上
这是我的档案:
我知道在这种情况下很难找到问题,但我猜这与
Meteor
和ROOT\u URL
或者mupx
有关。我花了很长时间进行调试,发现问题实际上是由于ROOT\uURL
变量引起的
PS:你会问我为什么要在应用程序代码中设置这个全局变量?这是因为成功登录后,accounts facebook
不会正确重定向,而是挂在空白的facebook屏幕上
若我将从应用程序代码中删除ROOT_URL,那个么白屏问题将消失,但facebook登录无法正确重定向。让我们假设Facebook的设置是正确的,Deauthorize Callback URL=http://xxxxxx.com/_oauth/facebook
PPS:也尝试将应用程序更新为meteor v1.3-rc.13。同样的事情
任何帮助都将不胜感激。您有什么解决方案吗?您有什么解决方案吗?
**** settings.json ****
{
"rootUrl": "http://xxxxxx.com",
"facebook": {
"appId": "xxxxxxxxxxxxxxxxxxxxx",
"secret": "xxxxxxxxxxxxxxxxxxxxxxxxxxx",
"loginStyle": "redirect"
},
}
**** mup.json ****
{
"servers": [
{
"host": "xxxxxx.com", // actual server
"username": "user",
"pem": "~/.ssh/pem.key",
"env": {}
}
],
"env": {
"PORT": 80,
"ROOT_URL": "http://xxxxxx.com"
},
"setupMongo": true,
"setupNode": true,
"nodeVersion": "0.10.40", // "0.10.43" for meteor-1.3
"setupPhantom": true,
"enableUploadProgressBar": true,
"appName": "xxxxxx",
"app": "../../app",
"deployCheckWaitTime": 60
}
**** lib/_global.js ****
ROOT_URL = Meteor.settings.rootUrl;
**** server/accounts.js ****
ServiceConfiguration.configurations.upsert(
{ service: "facebook" },
{
$set: {
appId: Meteor.settings.facebook.appId,
secret: Meteor.settings.facebook.secret,
loginStyle: Meteor.settings.facebook.loginStyle
}
}
);