2

私は非常に奇妙な問題を抱えています。

ExpressJSでNodeJSを使用しています。ユーザーを認証する「パスポート」モジュールも有効にしました。

私は次のルートを持っています

app.get("/home", ensureLoggedIn("/login"), (req, res) ->
    res.render "home",
        title:"Home"
)   

ユーザーが初めてログインした後、これは正常に機能します。

「localhost:3000/home」で更新すると、すべての CSS ファイルと JS ファイルが読み込まれていないように見えるため、Chrome は「読み込み」を続けます (回転する画像)。

コンソールを見ると、次のログが出力されています

GET /home 200 14ms - 1.32kb <-- first time page being loaded...
GET /css/main.css 304 19ms
GET /js/libs/handlebars.min.js 304 12ms
GET /js/libs/underscore-min.js 304 19ms
GET /js/libs/jquery-ui-1.10.2.custom.min.js 304 21ms
GET /js/libs/jquery-migrate-1.1.1.min.js 304 26ms
GET /js/libs/backbone-min.js 304 19ms
GET /js/libs/jquery-1.9.1.min.js 304 31ms

GET /home 304 18ms <-- second time page being loaded
GET /js/libs/underscore-min.js 304 14ms
GET /js/libs/jquery-ui-1.10.2.custom.min.js 304 16ms
GET /js/libs/jquery-1.9.1.min.js 304 15ms
GET /js/libs/jquery-migrate-1.1.1.min.js 304 15ms

最初は特定の JS ファイルのように見えたので、「jquery-migrate-1.1.1.min.js」ファイルを取り出しましたが、ロードしようとしている別の JS ファイルで再び発生します。

「パスポート」モジュールと関係があると思ったので、「ensureLoggedIn」コードを取り出しましたが、まだ発生しています。

何か案は?

アップデート

ブラウザが「ハング」して何も読み込まれなくなったら、どこにも行けません。アセット (CSS ファイル、JS ファイル、画像など) またはパスを取得するためにブラウザーに任意の URL を入力すると、読み込みが続行され、コンソール ログには何も表示されません。

更新2

これはますます奇妙になっています。だからここに私がやったことです。ルートに行くと

app.get("/home", (req, res) ->
    res.render "home",
        title:"Home"
)

私の(非常に単純な)home.jadeファイルで

!!! 5
html(lang='en')
head
  body

すべて正常に動作します。ページを何度も更新できますが、問題はありません。

次に、「パスポート」モジュールを有効にして、

app.get("/home", ensureLoggedIn("/login"), (req, res) ->
    res.render "home",
        title:"Home"
)   

正常にログインでき、「ホーム」(home.jade) ファイルが正しく表示されます。そして、ここにキッカーがあります。正確に 16 回更新すると、17 回目にページがハングします。

NodeJSサーバーを停止して再起動すると、まったく同じことが16回の更新まで機能し、17日に停止します。

パスポートモジュールにある種の「リクエスト」制限があるような気がしますか? または、私は気が狂ってしまうかもしれません。

解決済み

私は自分の問題を発見しました-初歩的な間違いです-PostgresをDBとして使用していましたが、各クエリに対して、接続を適切に「閉じ」ていませんでした。したがって、リフレッシュするたびに、DBへの新しい接続が開かれました-ばかばかしい、ばかげた。

4

0 に答える 0