5
app.all()
和app.use()
有什麼區別?當請求與任何類型的請求方法的特定URIapp.all和app.use有什麼區別?
app.all()
和app.use()
有什麼區別?當請求與任何類型的請求方法的特定URIapp.all和app.use有什麼區別?
app.all()
將被稱爲(例如GET,POST,PUT或DELETE)
app.use()
另一方面爲你可能有任何中間件更加有用因爲它「掛載」到路徑前綴上,並且在任何時候都會請求該路由下的URI。因此,例如app.use('admin/', isAuthorized)
可能是一箇中間件,它將確保在「admin /」下訪問的任何URI(例如「admin/settings」或「admin/bing/bang」)僅由授權用戶請求。如果您不提供裝載路徑,則默認使用根URI「/」。
你可以使用水珠(例如app.all('admin/*', isAuthorized)
)做同樣的事情與app.all()
,但app.use()
確實從req.path
這對於一些中間件是非常有用的剝離裝入URI的額外步驟。
文檔([all](http://expressjs.com/api.html#app.all),[use](http://expressjs.com/api.html#app.use))很漂亮詳細介紹了兩者。你對什麼感到困惑? –