2012-03-18 30 views
0

これで、私は壁に向かって頭を叩いて、これを理解しようとしています!私はFacebook経由で認証しようとしています。node.js/everyauth:認証要求でセッション情報を維持する

私はノード(0.6.13)をamazon ec2サーバーで実行しています。私は認証のためにすべての認証を使用しています。また、永続性のためにmongodb(mongodbネイティブとconnect-mongodb)を持っています。ここで私はモンゴーをインスタンス化する方法です:

var MongoStore = require('connect-mongodb'); 
var mongo = require('mongodb'); 
var mongoServer = new mongo.Server('localhost', 27017, {auto_reconnect: true, native_parser: true}) 
var mongoStore = new MongoStore({ 
    db: new mongo.Db('test', mongoServer, {}) 
    , reapInterval: 3000 
}); 

私はeveryauthを使ってfacebookを通して認証しようとしています。だから、私のアプリがhttp://ec2ip:3000/のポート3000で動いていると仮定しましょう。私のFacebookブックの設定では、ウェブサイトはhttp://ec2ip:3000/にリダイレクトされています。

エクスプレスはそうのような設定である:私は、サーバー上に置く前に

app.get('/', function (req, res) { 

if(!req.session.auth || !req.session.auth.loggedIn) 
{ 
    console.log("Not authorized!"); 
    res.redirect('/auth/facebook/');  
} 
else 
{ 
    console.log("Authorized!");  
    res.sendfile(__dirname + '/www/index.html'); 
}  
}); 

このは、局部的に取り組んでいます。何が起こるかは、正しくfacebookで認証され、私のウェブサイトにリダイレクトされますが、req.session.authは常に定義されず、永久にリダイレクトされます。私はそれが正常に認証を知っているにもかかわらず、それはちょうど右のセッション情報を渡していません。

これは、セッション情報が維持されるように適切にリダイレクト要求を設定するとは何かを持っているが、私はそれはボンネットの下に働いているかを理解していません。

ご迷惑をおかけして申し訳ございません。これらは、私が抱えている関連の質問/問題ですが、私のケースでそれを適用する方法がわかりません:https://github.com/bnoguchi/everyauth/issues/189

+0

あなたはPaulからそれをうまく操作しましたか? –

答えて

0

"req.session"の値は何ですか?次に、必要なオブジェクトの値を直接取得します。

関連する問題