これはコードです:
app.get('/:id', function (req, res){
usermodel.findOne({ user: req.params.id }, function (err, user1){
console.log(user1);
if (req.session.user != user1.user) {
usermodel.findOne({ user: req.session.user,
follow: user1.id }, function (err, user) {
if (user != null) {
res.render('profile.ejs', {
user: user1,
ses: req.session.user,
foll: true
});
} else {
res.render('profile.ejs', {
user: user1,
ses: req.session.user,
foll: false
});
}
});
} else {
res.render('profile.ejs', {
user: user1,
ses: req.session.user
})
}
});
});
これがマングースのスキーマです。
var userschema = new mongoose.Schema({
user: String,
follow: [String],
followers: [String]
});
このコードは実際には機能しますが、ローカルでのみ機能します。VPS に更新しましたが、動作しません。たとえば、出力http://www.xxxx.com/foo
を受け取ったconsole.log()
が、ページがロードされず、2 分間ロードされ、ブラウザがエラーを返すなどにアクセスしようとしました。
基本的に、コードは URL で指定されたユーザーが req.session.user 内のユーザーであるかどうかをチェックし、そうでない場合は_id
、URL で指定されたユーザーが の次の配列にあるかどうかをチェックしreq.session.user
、依存します結果の値を変数に送信しますfoll
。true の場合req.session.user
は指定されたユーザーに従っていることを意味し、false の場合はそうではありません。
ローカルでは動作しますが、私の VPS では動作しない理由がわかりません! これに対する解決策はありますか...?
よろしくお願いします!