亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

characters

我應(yīng)該如何構(gòu)建我的應(yīng)用程序?

這個問題沒有明確的答案。答案取決于您的應(yīng)用程序的規(guī)模和涉及的團(tuán)隊(duì)。為了盡可能靈活,Express在結(jié)構(gòu)方面不做任何假設(shè)。

在您喜歡的任何目錄結(jié)構(gòu)中,路由和其他特定于應(yīng)用程序的邏輯可以存儲在任意多個文件中。查看以下示例以獲取靈感:

  • Route listings

  • Route map

  • MVC style controllers

此外,還有Express的第三方擴(kuò)展,可以簡化以下某些模式:

  • Resourceful routing

我如何定義模型?

Express沒有數(shù)據(jù)庫的概念。這個概念由第三方Node模塊決定,允許您與幾乎任何數(shù)據(jù)庫進(jìn)行交互。

請參閱LoopBack了解以模型為中心的基于Express的框架。

我如何驗(yàn)證用戶?

身份驗(yàn)證是Express未冒險進(jìn)入的另一個有見地的領(lǐng)域。您可以使用您希望的任何驗(yàn)證方案。有關(guān)簡單的用戶名/密碼方案,請參閱此示例。

Express支持哪些模板引擎?

Express支持符合(path, locals, callback)簽名的任何模板引擎。要規(guī)范化模板引擎接口和緩存,請參閱consolidate.js項(xiàng)目以獲得支持。未列出的模板引擎可能仍然支持Express簽名。

有關(guān)更多信息,請參閱使用Express模板引擎。

我如何處理404響應(yīng)?

在Express中,404響應(yīng)不是錯誤的結(jié)果,所以錯誤處理程序中間件不會捕獲它們。這種行為是因?yàn)?04響應(yīng)只是表示沒有額外的工作要做;換句話說,Express已經(jīng)執(zhí)行了所有的中間件功能和路由,并且發(fā)現(xiàn)它們都沒有響應(yīng)。您只需在堆棧底部添加一個中間件函數(shù)(在所有其他函數(shù)下面)來處理404響應(yīng):

app.use(function (req, res, next) {
  res.status(404).send("Sorry can't find that!")})

我如何設(shè)置錯誤處理程序?

您定義錯誤處理中間件的方式與其他中間件相同,除了四個參數(shù)而不是三個;具體與簽名(err, req, res, next)

app.use(function (err, req, res, next) {
  console.error(err.stack)
  res.status(500).send('Something broke!')})

有關(guān)更多信息,請參閱錯誤處理。

我如何呈現(xiàn)純HTML?

你不能!沒有必要使用該res.render()功能“呈現(xiàn)”HTML 。如果您有特定文件,請使用該res.sendFile()功能。如果您正在從一個目錄提供許多資產(chǎn),請使用express.static()中間件功能。

Previous article: Next article: