web-dev-qa-db-ja.com

フラッシュ、コネクトフラッシュ、エクスプレスフラッシュの違い

フラッシュ、コネクトフラッシュ、エクスプレスフラッシュの正確な違いはまだわかりません。

インストール:

  • フラッシュnpm install flash

  • express-flashnpm install express-flash

  • connect-flashnpm install connect-flash

使用法:

フラッシュ

app.use(session()); // session middleware 
app.use(require('flash')());

app.use(function (req, res) {
  // flash a message 
  req.flash('info', 'hello!');
  next();
})

接続フラッシュ

var flash = require('connect-flash');
var app = express();

app.configure(function() {
  app.use(express.cookieParser('keyboard cat'));
  app.use(express.session({ cookie: { maxAge: 60000 }}));
  app.use(flash());
});

express-flash使用方法を同じように設定するように要求するconnect-flash

var flash = require('express-flash'),
    express = require('express'),
    app = express();

  app.use(express.cookieParser('keyboard cat'));
  app.use(express.session({ cookie: { maxAge: 60000 }}));
  app.use(flash());

誰かが説明できますか?

9
antzshrek

3つのパッケージに大きな違いはありません。彼らは皆同じ​​やり方で同じことを成し遂げています。 3つの違いは次のとおりです。

  1. flashはExpressチームによって作成され、Expressの公式ミドルウェアになっています。
  2. connect-flashは、READMEから述べられています。

このミドルウェアはExpress 2.xから抽出されました

したがって、ある意味では、これはExpress 2.x日からのレガシーバージョンを除いて、flashに似ています。ただし、この名前は Connect フレームワーク用であることを示していますが、通常はconnect-*パッケージはExpressで正常に動作します。

  1. express-flashは、connect-flashの単なるラッパーです。ソースコード here で確認できます。

3つのうち、connect-flashは、npm統計から判断すると、最も使用されているようです。

10
Francisco Mateo