让Heroku的config vars在node.js中工作
我有一个节点的应用程序,有这样一行:
var ip = process.env.IP || 'http://localhost';
我使用passport-facebook
节点包来定义来自Facebook身份validation的callback:
passport.use(new FacebookStrategy({ clientID: FACEBOOK_APP_ID, clientSecret: FACEBOOK_APP_SECRET, callbackURL: ip + ":" + port + "/auth/facebook/callback" }, function(accessToken, refreshToken, profile, done) { // asynchronous verification, for effect... process.nextTick(function () { return done(null, profile); }); } ));
Heroku似乎并不知道process.env.IP
所以我继续在Heroku中定义一个config var
variables:
heroku config:add process.env.IP=http://app.mydomain.com
debugging服务器我发现ip不是我想要的,但它的http://localhost
与我在第一行代码中定义的回退相同。
如何让节点从heroku正确读取configurationvariables?
你想使用heroku config:set IP=http://app.mydomain.com
; 它定义了一个名为IP
的环境variables,它可以通过process.env.IP
在Node.js中访问。 有关更多信息,请参阅为部署的应用程序设置configurationvariables 。