簡體   English   中英

如何在feathers.js 中自定義默認布局

[英]How to customize default layouts in feathers.js

我使用feathers.js v3.0.5作為我的休息解決方案,使用feathers.js v3.0.5 feathers-cli創建了應用程序

對於每個錯誤代碼,框架都有一個特定的html 模板,包括羽毛標志和樣式:

  • 401 Not Authenticated
  • 403 Forbidden
  • 404 Not Found

有沒有辦法自定義錯誤的默認模板?

我想對於 index.html,我只能修改/public/文件夾中的index.html ,但是對於錯誤,我沒有找到任何明智的建議。

我認為 Feathers 應用程序不應該負責呈現錯誤頁面。 正如您所說,Feathers 是您的 REST/WebSocket 平台。 大多數人將其用作前端應用程序的純數據后端,甚至用作成熟的 Express 應用程序的 API 服務器。

在任何一種情況下,您都應該處理代碼中的 404 錯誤(例如),並將/顯示到您的 404“UI”。

由於您沒有詳細說明您的應用程序、設置等,因此我無法提供任何細節。 希望這會有所幫助。

您可以按照Feathers 錯誤處理程序文檔中的說明設置自定義 HTML 頁面:

const { errorHandler } = require('@feathersjs/express');
const app = feathers();

// Just like Express your error middleware needs to be
// set up last in your middleware chain.
app.use(errorHandler({
    html: function(error, req, res, next) {
      // render your error view with the error object
      res.render('error', error);
    }
}));

// Set paths to custom HTML pages
app.use(errorHandler({
    html: {
      404: 'path/to/notFound.html',
      500: 'there/will/be/robots.html'
    }
}));

另一個好的解決方案是關閉 html 錯誤。 這將返回 json 響應,這些響應更容易被基於軟件的 api 消費者解釋。

示例

app.use(errorHandler({
    html: false
}));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM