私はexpressとnode.jsの新機能があり、app.useとapp.getの違いを理解できません。両方を使って情報を送ることができるようです。例えば:express.jsのapp.useとapp.getの違い
app.get('/', function (req,res) {
res.send('Hello');
});
私はexpressとnode.jsの新機能があり、app.useとapp.getの違いを理解できません。両方を使って情報を送ることができるようです。例えば:express.jsのapp.useとapp.getの違い
app.get('/', function (req,res) {
res.send('Hello');
});
app.use()
は、アプリケーションにmiddlewareをバインドすることを意図しています。 path
は、任意のパスに適用する「マウント」または「接頭」経路であるとのみにミドルウェアを制限がそれにを開始することを要求されました。それも、他のアプリケーション埋め込むために使用することができますパス「マウント」として/
を指定することで
// subapp.js
var express = require('express');
var app = modules.exports = express();
// ...
// server.js
var express = require('express');
var app = express();
app.use('/subapp', require('./subapp'));
// ...
を、app.use()
は関係なく、それらのすべてとされている、/
で始まる任意のパスに反応します
GET /
PUT /foo
POST /foo/bar
app.get()
、一方、application routingエクスプレスの一部であり、GET
HTTP動詞で要求されたときに特定のルートを照合し、処理するために意図されている:
GET /
そして、同等のルーティングapp.use()
のご例えば、実際に次のようになります。
app.all(/^\/.*/, function (req, res) {
res.send('Hello');
});
app.get
がHTTP methodがGET
に設定されている場合app.use
がHTTPメソッドに関係なく呼び出され、一方、呼び出され、したがって定義される:
app.use('/',function(req, res,next) {
res.send('Hello');
next();
});
はこれと同じであると思われますエクスプレスパッケージがあなたにアクセス権を与える他のすべてのRESTfulタイプの上にあるレイヤー。
()を使うのに良い。 – Jeb50
app.use
は、Connect、Expressが依存するミドルウェアフレームワークから「低いレベル」方法です。あなたがGETメソッドを公開したい場合は
app.get
: は、ここに私のガイドラインです。
app.use
を使用します(たとえば、公開他のWebアプリケーションが使用できるnpmモジュールからの一連の経路)。は単に app.useはすべて、
app.getは、次の3つの異なる答えを得たよう
が見える「与えられたURLのために、GETリクエストでこれを実行する」を意味し、「すべての要求でこれを実行する」という意味しますトピックに何か寄与:)関連する質問があります。http://stackoverflow.com/questions/11321635/node-js-express-what-is-app-use –
はい、すべての良い答えです。ありがとう、私はそれを見てみましょう。 –